Ich möchte Abhängigkeitsaufrufe in Application Insights herausfiltern. Ich möchte überprüfen, ob der Anruf an einen bestimmten Gastgeber gerichtet ist. Nach this approach Ich habe mit diesem kommen:Abhängigkeiten in Application Insights filtern
public class ApplicationInsightsFilter : ITelemetryProcessor
{
...
IgnoredHosts = new List<string>
{
"foo.queue.core.windows.net",
"foo.blob.core.windows.net",
"bar.queue.core.windows.net",
"bar.blob.core.windows.net"
};
public void Process(ITelemetry item)
{
var request = item as DependencyTelemetry;
if (request?.Name != null)
{
Uri uri = Uri.TryCreate(request.Name, UriKind.Absolute, out uri) ? uri : null;
if (uri != null && IgnoredHosts.Contains(uri.Host))
return;
}
Next.Process(item);
}
}
Und in Program.cs
:
public static void ConfigureLogging()
{
...
TelemetryConfiguration.Active.TelemetryProcessorChainBuilder
.Use(next => new ApplicationInsightsFilter(next))
.Build();
}
Dies funktioniert beim Debuggen, bietet nicht in der Produktion. In der Produktion werden diese Anrufe noch protokolliert.
Irgendeine Idee?