Webサイト(Azure App Service)にAzure ApplicationInsightsを使用しています。その上で、私はクラスター化されたUmbracoセットアップとhangfireを使用しています。これら2つだけでも毎分データベースにアクセスし続け、私の「AppInsights」に溢れています。
だから私の質問は、SQL依存性トラッカーを無効にするにはどうすればよいですか? ApplicationInsights.configを確認しましたが、明らかなものは見つかりませんでした。私は見えます Microsoft.ApplicationInsights.DependencyCollector
おそらく責任がありますが、すべてのタイプの依存関係テレメトリを削除したくはありません、のみ sql。
ありがとう
ここでの最善の策は、テレメトリプロセッサを使用して、特定のタイプの依存関係要求を除外することです。詳細については、以下のリソースを確認してください。
Application Insights SDKでのテレメトリのサンプリング、フィルタリング、および前処理
テレメトリプロセッサを使用したApplication Insightsでのリクエストフィルタリング
プロセッサの例は次のようになります。
using Microsoft.ApplicationInsights.Channel;
using Microsoft.ApplicationInsights.Extensibility;
using Microsoft.ApplicationInsights.DataContracts;
public class NoSQLDependencies : ITelemetryProcessor
{
private ITelemetryProcessor Next { get; set; }
// Link processors to each other in a chain.
public NoSQLDependencies(ITelemetryProcessor next)
{
this.Next = next;
}
public void Process(ITelemetry item)
{
if (IsSQLDependency(item)) { return; }
this.Next.Process(item);
}
private bool IsSQLDependency(ITelemetry item)
{
var dependency = item as DependencyTelemetry;
if (dependency?.DependencyTypeName == "SQL")
{
return true;
}
return false;
}
}