Wie filtere ich Abhängigkeitstelemetriedaten für interne Kubernetes-Aufrufe in Application Insights heraus?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie filtere ich Abhängigkeitstelemetriedaten für interne Kubernetes-Aufrufe in Application Insights heraus?

Post by Anonymous »

Ich habe eine Anwendung, die etwa 400.000 Abhängigkeitstelemetrieereignisse pro 24 Stunden erzeugt, was einen echten, greifbaren Kostenfaktor für das Cloud-Hosting-Budget meines Unternehmens darstellt.
99 % dieser Ereignisse sind verschiedene Aufrufe von Dingen, die scheinbar mit Kubernetes zu tun haben, wie etwa Aufrufe von
  • Code: Select all

    http://10.0.10.161:8126/v0.4/traces
  • Code: Select all

    http://10.0.10.161:8126/info
  • Code: Select all

    http://10.0.1.120:8126/v0.1/pipeline_stats
die alle in Mikrosekunden ausgeführt werden.
Dies ist mein Telemetrieprozessor, der versucht, dieses Zeug herauszufiltern:

Code: Select all

public class DependencyFilter(ITelemetryProcessor next, DependencyFilterSettings settings)
: ITelemetryProcessor
{
private readonly TimeSpan
_longSql = TimeSpan.FromMilliseconds(settings.LogSQLCallsLongerThanMs);

private readonly TimeSpan
_longHttp = TimeSpan.FromMilliseconds(settings.LogHTTPRequestsLongerThan);

public void Process(ITelemetry item)
{
if (item is DependencyTelemetry dep) {
switch (dep.Type) {
case "HTTP":
HandleHttp(dep);
break;
case "SQL":
HandleSql(dep);
break;
default:
next.Process(item);
break;
}
} else {
next.Process(item);
}
}

private void HandleHttp(DependencyTelemetry dep)
{
if (dep.Duration

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post