次の方法で共有


Power Platform における複数のサービスにわたる分散トレーシング

マイクロソフトは、Power Platform アプリとサービスの正常性とパフォーマンスの維持に使用できる、さまざまな監視ツールとプロセスを提供しています。 監視作業の重要な要素は、エンドツーエンドのトレーサビリティです。

チップ

この記事では、複数のサービスでイベントをトレースする方法のシナリオ例と視覚的表現を提供します。 このソリューションは、さまざまなシナリオや業界で使用できる、一般化されたシナリオ アーキテクチャの例です。

アーキテクチャ ダイアグラム

複数の Power Platform サービスにわたる分散トレースのアーキテクチャ図。

Workflow

次のステップでは、アーキテクチャ図の例で示した Azure から Dataverse Web API のワークフローについて説明します:

  1. エンド ユーザー アプリケーション: Azure Functions、Web サービス、Kubernetes などの Azure サービスやソリューションは、ユーザーやエージェントによって生成された特定のイベントに関連する分散トランザクションを開始します。

  2. Dataverse Web API: Azure サービスは、Dataverse エンティティとカスタム API へのリクエストにトレース親を追加します。 トレースの親は、要求本文またはタグ クエリ文字列に含めることができます。

    トレースの親は、トレース ID、スパン ID、および要求に関するその他の情報を含む W3C トレース コンテキスト ヘッダーです。 ヘッダーは、アーキテクチャ内のさまざまなコンポーネント間で 利用統計情報 データを関連付けるために使用されます。

  3. Dataverse メッセージ: リクエストは Dataverse にメッセージとして送信されます。 メッセージは、エンティティまたはカスタム定義の API に関連付けることができ、事前および事後アクションを適用できます。 これらのアクションは、Application Insights の分散追跡とすることができます。

  4. プラグイン: Dataverse C# プラグインを使用して、分散トレーシングの利用統計情報を生成し、Azure のリクエストを Dataverse アクションに関連付けます。

  5. Azure モニター: KQL クエリを作成して、コンポーネント間で利用統計情報をクエリして関連付けます。

以下のステップで Power Platform のワークフローを説明します:

  1. インストゥルメント: Application Insights 接続文字列/キーで Power Platform リソースを構成します。

  2. トレース: Copilot Studio、Power Apps、Power Automate が、カスタム Dataverse API を呼び出してトランザクションを開始します。

コンポーネント

このアーキテクチャの例には、監視ツールとサービス、および遠隔測定データを生成する Power Platform コンポーネントが含まれます。

監視ツールとサービス

Azure Monitor は、クラウドとオンプレミス環境からテレメトリを収集、分析、対処する包括的なソリューションです。 Kusto 照会言語 (KQL) を使用して、さまざまなコンポーネント間で利用統計データのクエリを実行し、関連付けます。 詳細については、Azure Monitor ログでログのクエリを開始するおよび Azure Data Explorer を使用してAzure Monitorでデータをクエリするを参照してください。

Application Insights は Azure Monitor の OpenTelemetry 機能で、アーキテクチャ内の Web アプリケーション、サービス、およびその他のコンポーネントを監視できます。 問題の診断、ユーザーがアプリで実際に行うことを理解するのに役立つ強力な分析ツールが含まれています。

Azure Data Explorer は、大量のデータをほぼリアルタイムで分析できるように設計された、高速で拡張性の高い分析プラットフォームです。 Azure Data Explorer を使用して、Application Insights、Azure Monitor、その他の Azure サービスからの利用統計データを照会および分析できます。

Power Platform コンポーネント

Microsoft Dataverse は、Power Platform を含む Microsoft クラウドの大部分の基盤となるデータ プラットフォームです。 Application Insights を使用すると、Dataverse から診断とパフォーマンスの利用統計情報を受信できます。 詳細情報については、Application Insights でモデル駆動型アプリと Microsoft Dataverse の利用統計情報を分析するを参照してください。

Copilot Studio は、エージェントとエージェント フローの構築に使用できるグラフィカルでローコードなツールです。 エージェントから利用統計情報データをキャプチャして、Application Insights を使用してパフォーマンスを監視できます。 詳細については、Application Insights でテレメトリをキャプチャするを参照してください。

​Power Apps キャンバス アプリ は空白の キャンバス で、コンポーネントをドロップしてデータ ソースへのユーザー インターフェイスを構築します。 Application Insights でキャンバス アプリを監視できます。 詳細情報については、Application Insights を使用したシステム生成ログの分析を参照してください。

Power Apps モデル駆動型アプリは、データ モデルと定義済みのコンポーネントを使用して構築するアプリです。 キャンバス アプリと同様に、モデル駆動型アプリは、Application Insights で監視できるテレメトリを生成します。 詳細情報については、Application Insights でモデル駆動型アプリと Microsoft Dataverse の利用統計情報を分析するを参照してください。

Power Automate は、自動化されたワークフローの構築に使用できるグラフィカルでローコードなツールです。 クラウド フロー テレメトリー データを環境レベルで Application Insights にエクスポートできます。 詳細情報については、Power Automate を使用して Application Insights を設定するを参照してください。

Power BI は、ソフトウェア サービス、アプリおよびコネクタの集合体であり、これらが連携して、関連性のないデータ ソースを一貫性があり視覚的にイマーシブで対話型のインサイトに変換します。 これを使用して、利用統計情報 データのクエリと視覚化を行うことができます。

シナリオの詳細

このアーキテクチャは、W3C の Trace Context の推奨を実装することで、Power Platform 内の複数のコンポーネントと、Power Platform 外のシステムからのテレメトリを相関させることができるように設計されています:

  • 依存関係レコードを使用して、Application Insights のトレース レコードとリクエスト レコードを関連付けます。
  • オペレーションのエンドツーエンドのトレーサビリティをサポートします。
  • チームが問題を診断して解決するために 利用統計情報 を構成できるようにします。
  • 外部システムが分散トレース コンテキストを Power Platform に渡すことを許可します。
  • Power Platform コンポーネントを分散トレース セッションに含めます。

考慮事項

これらの考慮事項は、ワークロードの品質を向上させる一連の基本原則である Power Platform Well-Architected の柱を実行します。 詳細については、Microsoft Power Platform Well-Architected を参照してください。

信頼性

導入したソリューションが、ご利用の監視およびアラート戦略に適合していることを確認してください。

オペレーショナル エクセレンス

セキュリティ、パフォーマンス、信頼性に関してワークロードを効果的に監視するには、すべての監視、検出、アラート機能の基盤となる独自のスタックを備えた包括的なシステムが必要です。 詳細については、監視システムの設計と構築に関する推奨事項をご参照ください。

パフォーマンス効率

このシナリオの例では、Power Platform ワークロードの推奨パフォーマンスデータを収集できます。

次のステップ

投稿者

Microsoft がこの記事を管理しています。 この記事を書いたのは、以下の寄稿者です。

作者代表: