この記事では、Azure Event Grid の問題をトラブルシューティングするのに役立つ情報を提供します。
リージョン内の Azure Event Grid の状態
Azure 状態ダッシュボードを使用して、特定のリージョンの Event Grid の状態を表示できます。
診断ログ
Event Grid のトピックまたはドメインの診断設定を有効にして、発行および配信のエラー ログをキャプチャして表示します。 詳細については、診断ログに関するページを参照してください。
メトリック
Event Grid のトピックとサブスクリプションのメトリックを表示し、それらのアラートを作成することができます。 詳細については、Event Grid のメトリックに関するページを参照してください。
警告
Azure Event Grid メトリックとアクティビティ ログ操作に関するアラートを作成します。 詳細については、Event Grid のメトリックとアクティビティ ログのアラートに関するページを参照してください。
サブスクリプション検証の問題
イベント サブスクリプションの作成中に、指定されたエンドポイントの検証に失敗したというエラー メッセージが表示される場合があります。 サブスクリプション検証の問題のトラブルシューティングについては、Event Grid サブスクリプション検証のトラブルシューティングに関するページを参照してください。
ネットワーク接続の問題
クライアント アプリケーションが Event Grid トピックまたはドメインに接続できない理由はさまざまです。 発生した接続の問題は、永続的である場合もあれば、一時的なものである場合もあります。 これらの問題を解決する方法については、接続の問題のトラブルシューティングに関するページを参照してください。
エラー コード
400、409、403 などのエラー コードを含むエラー メッセージが表示された場合は、Event Grid エラーのトラブルシューティングに関するページを参照してください。
分散トレース
.NET、Java、Python、JavaScript の Event Grid ライブラリでは、トレースを分散できます。 分散トレースに関する CloudEvents 仕様のガイダンスに従うため、分散トレースが有効になっている場合、ライブラリでは CloudEvent
拡張機能の traceparent
属性と tracestate
属性が設定されます。
アプリケーションで分散トレースを有効にする方法の詳細については、Azure SDK の分散トレースに関するドキュメントを参照してください。
Azure Event Hubs または Azure Service Bus Event Grid サブスクリプションでエンドツーエンドのトレースを有効にするには、traceparent
CloudEvent 拡張属性を Diagnostic-Id
AMQP アプリケーション プロパティに転送するようにカスタム配信プロパティを構成します。
次は、Event Hubs にトレース配信プロパティが構成されているサブスクリプションの例です。
az eventgrid event-subscription create --name <event-grid-subscription-name> \
--source-resource-id <event-grid-resource-id>
--endpoint-type eventhub \
--endpoint <event-hubs-endpoint> \
--delivery-attribute-mapping Diagnostic-Id dynamic traceparent
Azure Functions では、Azure Monitor を使用した分散トレースがサポートされています。これには、実行とバインドの組み込みトレース、パフォーマンスの監視などが含まれます。
Microsoft.Azure.WebJobs.Extensions.EventGrid パッケージ バージョン 3.1.0 以降では、プロデューサー呼び出しと Functions Event Grid トリガー実行の間の CloudEvents の相関関係を有効にします。 詳細については、Azure Functions トリガーと Event Grid トリガーを使用した分散トレースに関するページを参照してください。
サンプル
行カウンターに関するサンプルを参照してください。 このサンプル アプリでは、Storage、Event Hubs、および Event Grid クライアントを ASP.NET Core 統合、分散トレース、ホステッド サービスと共に使用する方法を示しています。 ユーザーはファイルを BLOB にアップロードでき、これにより、ファイル名を含む Event Hubs イベントがトリガーされます。 Event Hubs プロセッサはイベントを受け取り、その後、アプリは BLOB をダウンロードし、ファイル内の行数をカウントします。 アプリには、行数を含むページへのリンクが表示されます。 リンクをクリックすると、Event Grid を使用してファイルの名前を含む CloudEvent が発行されます。
次のステップ
さらにサポートが必要な場合は、Stack Overflow フォーラムに問題を投稿するか、サポート チケットを開いてください。