2016-05-13 7 views
4

APIコールのサーバー側のテレメトリーを追跡するために、アプリケーションInsightsがインストールされたAzure App Serviceで実行されるAPI Appがあります。 AzureポータルでApplication Insightを表示すると、1回のサーバーコールごとに2つのイベントが表示されます。各イベントは、同じタイムスタンプ、応答時間、テレメトリーなどで正確に重複しています。私は、Webサーバのログに1つのイベントしかないことを確認していますので、誤って同じ機能をクライアントから2回呼び出すことはありません。ここで Application Insights各サーバーリクエストの重複イベントを報告する

は、スクリーンショットのカップルが説明するために、次のとおりです。これを引き起こしている可能性が何

enter image description here

enter image description here

?それをどうやって修正することができますか?

+0

TrackRequestへの呼び出しなどの手動インストルメンテーションを追加しましたか、これはインストールしているApplication Insightを取得する自動計測です。 Application InsightsリクエストトラッキングHTTPモジュールがweb.configに一度だけ登録されているかどうか確認できますか? –

+0

AIがVisual Studioによって自動的に追加されました。 TrackTraceとTrackExceptionの呼び出しの形でいくつかの手動計測がありますが、TrackRequestへの呼び出しはありません。次回のコメントで私のWeb.configからAI登録を投稿します。 –

+0

名を削除< <= "Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule、Microsoft.AI.Web" /名前= "ApplicationInsightsWebTracking" タイプを追加>あなたのよう= "ApplicationInsightsWebTracking" /> <名を追加= "ApplicationInsightsWebTracking" タイプ= "Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule、Microsoft.AI.Web" 前提条件= "managedHandler" /> –

答えて

4

データの重複につながる可能性がありつの既知のシナリオがあります:Azureの Webアプリケーション

  • AI拡張がアプリにインストールされているよう

    1. アプリケーションは、AI SDKにonboardedされていないが展開されています - >この手順の後にあなたがあなたに
    2. 後にコードを変更することなく、データの受信を開始 は、AIのより強力な機能を使用することを決めたのは、カスタム イベントトラッキングおよびVSからAIへのオン乗り込んアプリケーションと 再をしましょう配備された。

    これで、HTTPモジュールが2回登録され、重複するリクエストデータの受信を開始することがあります。 AI nugetパッケージがweb.configにHTTPモジュール定義を追加するために発生しますが、拡張インストールにより、アプリケーション起動時に動的にHTTPモジュールを登録するアプリケーションbinフォルダにアセンブリが追加される - Microsoft.AI.HttpModule.dll(Microsoft.ApplicationInsights.Extensibility.HttpModule以前のバージョンでは.dll)。このケースを正しく処理するには、アプリケーションのデプロイ時に、VSからデプロイする場合に[設定 - >追加ファイルをデスティネーションから削除する]を選択して拡張機能の残りの部分を削除する必要があります。

  • +0

    "追加のファイル形式を削除する"オプションを選択し、Visual Studioから再デプロイすると問題が解決しました。ありがとうございました! –

    関連する問題