Dela via


Felsöka autoinstrumentation för Application Insights

Den här artikeln hjälper dig att felsöka problem som påverkar automatisk instrumentering i Application Insights.

Kommentar

Autoinstrumentation kallades kodlös anslutning före oktober 2021.

Telemetridata rapporteras inte när du har aktiverat automatisk instrumentering

Om du har aktiverat automatisk instrumentering av Application Insights för apptjänsten men inte ser rapporterade telemetridata läser du de vanliga scenarierna i följande avsnitt.

Application Insights SDK installerades tidigare

Automatisk instrumentering misslyckas om .NET- och .NET Core-appar redan har Application Insights SDK installerat.

Om du vill kunna instrumentera appen automatiskt tar du bort Application Insights SDK.

En app publicerades med en version av .NET eller .NET Core som inte stöds

Kontrollera att en version av .NET eller .NET Core som stöds användes för att skapa och publicera program.

Information om huruvida din version stöds finns i följande .NET- eller .NET Core-dokumentation:

Ett diagnostikbibliotek har identifierats

Automatisk instrumentering misslyckas om den identifierar följande bibliotek:

  • System.Diagnostics.DiagnosticSource
  • Microsoft.AspNet.TelemetryCorrelation
  • Microsoft.ApplicationInsights

För att automatisk instrumentering ska fungera måste dessa bibliotek tas bort.

Du stöter på SDK-problem när du har aktiverat automatisk instrumentering

Om du stöter på problem som orsakas av själva Application Insights SDK när du har aktiverat automatisk instrumentering samlar du in självdiagnostikloggar för att diagnostisera problemen. Mer information finns i Samla in självdiagnostikloggar för Application Insights SDK:er.

Problem vid att distribuera Application Insights Monitoring Agent-tillägget för virtuella datorer och virtuella maskinskalningsuppsättningar

Kommentar

De här felsökningstipsen gäller för .NET-program.

Om du har problem med att distribuera tillägget granskar du körningsutdata som tillägget loggar till filer i följande kataloger:

C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.ApplicationMonitoringWindows\<version>\

Om ditt tillägg har distribuerats framgångsrikt, men du inte kan se telemetri kan det vara något av följande problem som beskrivs i Agentfelsökning:

  • Motstridiga dynamiska länkbibliotek (DLL:er) i en apps bin-katalog.
  • Konflikt med delad IIS-konfiguration.

Problem med att Java-appen körs på Azure Functions

Långsamma starttider

Dina Java-funktioner kan ha långsamma starttider om du antog den här funktionen före februari 2023. Från funktionsappens översiktsfönster går du till Konfiguration i navigeringsmenyn. Välj sedan Programinställningar och använd följande steg för att åtgärda problemet.

  1. Kontrollera om följande inställningar finns och ta bort dem:

    XDT_MicrosoftApplicationInsights_Java -> 1
    ApplicationInsightsAgent_EXTENSION_VERSION -> ~2
    
  2. Aktivera den senaste versionen genom att lägga till den här inställningen:

    APPLICATIONINSIGHTS_ENABLE_AGENT: true
    

Duplicerade loggar

Om du använder log4j eller logback för konsolloggning skapar distribuerad spårning för Java Functions dubbletter av loggar. Dessa dubblettloggar skickas sedan till Application Insights. Undvik det här beteendet genom att använda följande lösningar.

Log4j

Lägg till följande filter i log4j.xml:

<Filters>
  <ThresholdFilter level="ALL" onMatch="DENY" onMismatch="NEUTRAL"/>
</Filters>

Exempel:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
      <Filters>
        <ThresholdFilter level="ALL" onMatch="DENY" onMismatch="NEUTRAL"/>
      </Filters>
    </Console>
  </Appenders>
  <Loggers>
    <Root level="error">
      <AppenderRef ref="Console"/>
    </Root>
  </Loggers>
</Configuration>

Tillbakaloggning

Lägg till följande filter i logback.xml:

<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
  <level>OFF</level>
</filter>  

Exempel:

<configuration debug="true">
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are  by default assigned the type
         ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%kvp- %msg%n</pattern>
      <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>OFF</level>
      </filter>  
    </encoder>
  </appender>
  <root level="debug">
    <appender-ref ref="STDOUT" />
  </root>
</configuration>

Mer information

Om du har ytterligare frågor om automatisk instrumentering av Application Insights kan du publicera dem på vår frågesida för Microsoft Q&A.

Kontakta oss för att få hjälp

Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.

Ansvarsfriskrivning för kontakt från tredje part

Microsoft tillhandahåller kontaktinformation från tredje part som hjälper dig att hitta ytterligare information om det här ämnet. Denna kontaktinformation kan ändras utan föregående meddelande. Microsoft garanterar inte att kontaktinformation från tredje part är korrekt.