Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver hur du aktiverar och konfigurerar Application Insights för ett ASP.NET Core-program .
Varning
Vi rekommenderar Azure Monitor OpenTelemetry Distro för nya program eller kunder för att driva Azure Monitor Application Insights. Azure Monitor OpenTelemetry Distro ger en liknande funktion och upplevelse som Application Insights SDK. Det går att migrera från Application Insights SDK med hjälp av migreringsguiderna för .NET, Node.js och Python, men vi arbetar fortfarande med att lägga till ytterligare några funktioner för bakåtkompatibilitet.
Application Insights kan samla in följande telemetri från ditt ASP.NET Core-program:
- begäranden
- Beroenden
- Undantag
- Prestandaräknare
- Hjärtslag
- Loggar
Vi använder ett MVC-programexempel . Om du använder Arbetstjänsten använder du anvisningarna i Application Insights för Worker Service-program.
Ett OpenTelemetry-baserat .NET-erbjudande är tillgängligt. Mer information finns i Översikt över OpenTelemetry.
Kommentar
Stödet för inmatning av instrumentationsnycklar upphör den 31 mars 2025. Inmatningen av instrumenteringsnyckeln fortsätter att fungera, men vi kommer inte längre att tillhandahålla uppdateringar eller stöd för funktionen. Övergå till anslutningssträng för att dra nytta av nya funktioner.
Kommentar
Om du vill använda en fristående ILogger-provider använder du Microsoft.Extensions.Logging.ApplicationInsight.
Stödda scenarier
Application Insights SDK för ASP.NET Core kan övervaka dina program oavsett var eller hur de körs. Om programmet körs och har nätverksanslutning till Azure kan telemetri samlas in. Application Insights-övervakning stöds överallt där .NET Core stöds och omfattar följande scenarier:
- Operativsystem: Windows, Linux eller Mac
- Värdmetod: Process- eller out-of-process
- Distributionsmetod: Ramverksberoende eller fristående
- Webbserver: Internet Information Server (IIS) eller Kestrel
- Värdplattform: Funktionen Web Apps i Azure App Service, Azure Virtual Machines, Docker och Azure Kubernetes Service (AKS)
- .NET-version: Alla .NET-versioner som stöds officiellt och som inte finns i förhandsversionen
- IDE: Visual Studio, Visual Studio Code eller kommandorad
Förutsättningar
- Ett fungerande ASP.NET Core-program. Om du behöver skapa ett ASP.NET Core-program följer du den här självstudien om ASP.NET Core.
- En referens till en version som stöds av Application Insights NuGet-paketet.
- En giltig Application Insights-anslutningssträng. Den här strängen krävs för att skicka telemetri till Application Insights. Om du behöver skapa en ny Application Insights-resurs för att få en anslutningssträng kan du läsa Skapa en Application Insights-resurs.
Aktivera Application Insights-telemetri på serversidan (Visual Studio)
Använd den manuella vägledningen för Visual Studio för Mac. Endast Windows-versionen av Visual Studio stöder den här proceduren.
Öppna projektet i Visual Studio.
Gå till Project Add Application Insights Telemetry (Project>Add Application Insights Telemetry).
Välj Azure Application Insights>Nästa.
Välj din prenumeration och Application Insights-instans. Eller så kan du skapa en ny instans med Skapa ny. Välj Nästa.
Lägg till eller bekräfta din Application Insights-anslutningssträng. Den bör fyllas i i förväg baserat på ditt val i föregående steg. Välj Slutför.
När du har lagt till Application Insights i projektet kontrollerar du att du använder den senaste stabila versionen av SDK:et. Gå till Project>Manage NuGet Packages>Microsoft.ApplicationInsights.AspNetCore. Om du behöver det väljer du Uppdatera.
Aktivera Application Insights-telemetri på serversidan (ingen Visual Studio)
Installera Application Insights SDK NuGet-paketet för ASP.NET Core.
Vi rekommenderar att du alltid använder den senaste stabila versionen. Hitta fullständiga viktig information för SDK:t på GitHub-lagringsplatsen med öppen källkod.
Följande kodexempel visar de ändringar som ska läggas till i projektets .csproj-fil :
<ItemGroup> <PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.21.0" /> </ItemGroup>
Lägg till
AddApplicationInsightsTelemetry()
i klassen program.cs .Lägg till
builder.Services.AddApplicationInsightsTelemetry();
efterWebApplication.CreateBuilder()
metoden, som i det här exemplet:// This method gets called by the runtime. Use this method to add services to the container. var builder = WebApplication.CreateBuilder(args); // The following line enables Application Insights telemetry collection. builder.Services.AddApplicationInsightsTelemetry(); // This code adds other services for your application. builder.Services.AddMvc(); var app = builder.Build();
Lägg till anslutningssträng, vilket kan göras på tre sätt:
(Rekommenderas) Ange anslutningssträng i konfigurationen.
Ange anslutningssträng i appsettings.json och kontrollera att konfigurationsfilen kopieras till programmets rotmapp under publiceringen.
{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*", "ApplicationInsights": { "ConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000" } }
Ange anslutningssträng i
APPLICATIONINSIGHTS_CONNECTION_STRING
miljövariabeln ellerApplicationInsights:ConnectionString
i JSON-konfigurationsfilen.Till exempel:
SET ApplicationInsights:ConnectionString = <Copy connection string from Application Insights Resource Overview>
SET APPLICATIONINSIGHTS_CONNECTION_STRING = <Copy connection string from Application Insights Resource Overview>
-
APPLICATIONINSIGHTS_CONNECTION_STRING
Används vanligtvis i Web Apps. Den kan också användas på alla platser där denna SDK stöds.
Kommentar
En anslutningssträng som anges i koden vinner över miljövariabeln
APPLICATIONINSIGHTS_CONNECTION_STRING
, som vinner över andra alternativ.Ange anslutningssträng i kod.
Ange en anslutningssträng som en del av
ApplicationInsightsServiceOptions
argumentet iAddApplicationInsightsTelemetry
din program.cs-klass.
Användarhemligheter och andra konfigurationsprovidrar
Om du vill lagra anslutningssträng i ASP.NET Core-användarhemligheter eller hämta den från en annan konfigurationsprovider kan du använda överlagringen med en Microsoft.Extensions.Configuration.IConfiguration
parameter. En exempelparameter är services.AddApplicationInsightsTelemetry(Configuration);
.
I Microsoft.ApplicationInsights.AspNetCore
version 2.15.0 och senare läser anrop services.AddApplicationInsightsTelemetry()
automatiskt anslutningssträng från Microsoft.Extensions.Configuration.IConfiguration
programmet. Du behöver inte uttryckligen ange IConfiguration
.
Om IConfiguration
har läst in konfigurationen från flera leverantörer services.AddApplicationInsightsTelemetry
prioriteras konfigurationen från appsettings.json, oavsett i vilken ordning leverantörer läggs till. Använd metoden services.AddApplicationInsightsTelemetry(IConfiguration)
för att läsa konfigurationen från IConfiguration
utan den här förmånsbehandlingen för appsettings.json.
Köra ditt program
Kör ditt program och skicka begäranden till det. Telemetri bör nu flöda till Application Insights. Application Insights SDK samlar automatiskt in inkommande webbförfrågningar till ditt program, tillsammans med följande telemetri.
Live-mått
Live-mått kan användas för att snabbt kontrollera om programövervakning med Application Insights är korrekt konfigurerat. Det kan ta några minuter innan telemetri visas i Azure Portal, men fönstret livemått visar cpu-användningen av körningsprocessen nästan i realtid. Den kan också visa andra telemetrier som begäranden, beroenden och spårningar.
Aktivera livemått med hjälp av kod för alla .NET-program
Kommentar
Live-mått aktiveras som standard när du registrerar det med hjälp av de rekommenderade anvisningarna för .NET-program.
Så här konfigurerar du livemått manuellt:
Installera NuGet-paketet Microsoft.ApplicationInsights.PerfCounterCollector.
Följande exempelkonsolappkod visar hur du konfigurerar livemått:
using Microsoft.ApplicationInsights;
using Microsoft.ApplicationInsights.Extensibility;
using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse;
// Create a TelemetryConfiguration instance.
TelemetryConfiguration config = TelemetryConfiguration.CreateDefault();
config.ConnectionString = "InstrumentationKey=00000000-0000-0000-0000-000000000000";
QuickPulseTelemetryProcessor quickPulseProcessor = null;
config.DefaultTelemetrySink.TelemetryProcessorChainBuilder
.Use((next) =>
{
quickPulseProcessor = new QuickPulseTelemetryProcessor(next);
return quickPulseProcessor;
})
.Build();
var quickPulseModule = new QuickPulseTelemetryModule();
// Secure the control channel.
// This is optional, but recommended.
quickPulseModule.AuthenticationApiKey = "YOUR-API-KEY-HERE";
quickPulseModule.Initialize(config);
quickPulseModule.RegisterTelemetryProcessor(quickPulseProcessor);
// Create a TelemetryClient instance. It is important
// to use the same TelemetryConfiguration here as the one
// used to set up live metrics.
TelemetryClient client = new TelemetryClient(config);
// This sample runs indefinitely. Replace with actual application logic.
while (true)
{
// Send dependency and request telemetry.
// These will be shown in live metrics.
// CPU/Memory Performance counter is also shown
// automatically without any additional steps.
client.TrackDependency("My dependency", "target", "http://sample",
DateTimeOffset.Now, TimeSpan.FromMilliseconds(300), true);
client.TrackRequest("My Request", DateTimeOffset.Now,
TimeSpan.FromMilliseconds(230), "200", true);
Task.Delay(1000).Wait();
}
Föregående exempel är för en konsolapp, men samma kod kan användas i alla .NET-program. Om andra telemetrimoduler är aktiverade för automatisk insamling av telemetri är det viktigt att se till att samma konfiguration som används för att initiera modulerna används för modulen livemått.
ILogger-loggar
Standardkonfigurationen samlar in ILogger
Warning
loggar och allvarligare loggar. Mer information finns i Hur gör jag för att anpassa ILogger-loggsamlingen?.
Beroenden
Beroendeinsamling är aktiverat som standard. Beroendespårning i Application Insights förklarar de beroenden som samlas in automatiskt och innehåller även steg för att utföra manuell spårning.
Prestandaräknare
Stöd för prestandaräknare i ASP.NET Core är begränsat:
- SDK-versionerna 2.4.1 och senare samlar in prestandaräknare om programmet körs i Web Apps (Windows).
- SDK version 2.7.1 och senare samlar in prestandaräknare om programmet körs i Windows och mål
netstandard2.0
eller senare. - För program som riktar sig till .NET Framework stöder alla versioner av SDK prestandaräknare.
- SDK-versionerna 2.8.0 och senare stöder processor-/minnesräknaren i Linux. Ingen annan räknare stöds i Linux. Om du vill hämta systemräknare i Linux och andra miljöer som inte är Windows använder du EventCounters.
EventCounter
Som standard är EventCounterCollectionModule
aktiverat. Information om hur du konfigurerar listan över räknare som ska samlas in finns i Introduktion till EventCounters.
Utöka data via HTTP
HttpContext.Features.Get<RequestTelemetry>().Properties["myProp"] = someData
Aktivera telemetri på klientsidan för webbprogram
Föregående steg räcker för att hjälpa dig att börja samla in telemetri på serversidan. Om ditt program har komponenter på klientsidan följer du nästa steg för att börja samla in användningstelemetri med hjälp av JavaScript (Web) SDK Loader Script injection by configuration.
Lägg till inmatning i _ViewImports.cshtml:
@inject Microsoft.ApplicationInsights.AspNetCore.JavaScriptSnippet JavaScriptSnippet
I _Layout.cshtml infogar du
HtmlHelper
i slutet av<head>
avsnittet men före något annat skript. Om du vill rapportera en anpassad JavaScript-telemetri från sidan matar du in den efter det här kodfragmentet:@Html.Raw(JavaScriptSnippet.FullScript) </head>
Ett alternativ till att använda FullScript
ScriptBody
är tillgängligt med början i Application Insights SDK för ASP.NET Core version 2.14. Använd ScriptBody
om du behöver styra taggen <script>
för att ange en innehållssäkerhetsprincip:
<script> // apply custom changes to this script tag.
@Html.Raw(JavaScriptSnippet.ScriptBody)
</script>
.cshtml-filnamnen som refererades tidigare kommer från en MVC-standardprogrammall. Om du vill aktivera övervakning på klientsidan för ditt program korrekt måste JavaScript-SDK-inläsningsskriptet (Web) visas i avsnittet på varje sida i <head>
ditt program som du vill övervaka. Lägg till JavaScript(Web) SDK Loader Script i _Layout.cshtml i en programmall för att aktivera övervakning på klientsidan.
Om projektet inte innehåller _Layout.cshtml kan du fortfarande lägga till övervakning på klientsidan genom att lägga till JavaScript-SDK-inläsningsskriptet (Web) i en motsvarande fil som styr <head>
alla sidor i din app. Du kan också lägga till SDK-inläsningsskriptet för JavaScript (Web) på flera sidor, men vi rekommenderar det inte.
Kommentar
JavaScript-inmatning ger en standardkonfigurationsupplevelse. Om du behöver konfiguration utöver att ange anslutningssträng måste du ta bort automatisk inmatning enligt beskrivningen och lägga till JavaScript SDK manuellt.
Konfigurera Application Insights SDK
Du kan anpassa Application Insights SDK för ASP.NET Core för att ändra standardkonfigurationen. Användare av Application Insights ASP.NET SDK kanske är bekanta med att ändra konfigurationen med hjälp av ApplicationInsights.config eller genom att TelemetryConfiguration.Active
ändra . För ASP.NET Core gör du nästan alla konfigurationsändringar i metoden för ConfigureServices()
din Startup.cs-klass , såvida du inte dirigeras på annat sätt. Följande avsnitt innehåller mer information.
Kommentar
I ASP.NET Core-program stöds inte ändring av konfiguration genom att TelemetryConfiguration.Active
ändra.
Använda ApplicationInsightsServiceOptions
Du kan ändra några vanliga inställningar genom att skicka ApplicationInsightsServiceOptions
till AddApplicationInsightsTelemetry
, som i det här exemplet:
var builder = WebApplication.CreateBuilder(args);
var aiOptions = new Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions();
// Disables adaptive sampling.
aiOptions.EnableAdaptiveSampling = false;
// Disables live metrics (also known as QuickPulse).
aiOptions.EnableQuickPulseMetricStream = false;
builder.Services.AddApplicationInsightsTelemetry(aiOptions);
var app = builder.Build();
Den här tabellen har en fullständig lista med ApplicationInsightsServiceOptions
inställningar:
Inställning | beskrivning | Standard |
---|---|---|
AktiveraPrestationsräknarInsamlingsModul | Aktivera/inaktivera PerformanceCounterCollectionModule . |
Sant |
Aktivera förfrågningsspårnings-telemetrimodul | Aktivera/inaktivera RequestTrackingTelemetryModule . |
Sant |
AktiveraHändelseRäknarInsamlingsModul | Aktivera/inaktivera EventCounterCollectionModule . |
Sant |
Aktivera beroendespårningsmodulen för telemetri | Aktivera/inaktivera DependencyTrackingTelemetryModule . |
Sant |
AktiveraAppTjänsterHjärtslagsTelemetriModul | Aktivera/inaktivera AppServicesHeartbeatTelemetryModule . |
Sant |
AktiveraAzureInstanceMetadataTelemetryModule | Aktivera/inaktivera AzureInstanceMetadataTelemetryModule . |
Sant |
Aktivera snabbpulsmätarström | Aktivera/inaktivera LiveMetrics-funktionen. | Sant |
Aktivera adaptiv provtagning | Aktivera/inaktivera anpassningsbar sampling. | Sant |
AktiveraHjärtslag | Aktivera/inaktivera funktionen pulsslag. Det skickar regelbundet (15 min standard) ett anpassat mått med namnet HeartbeatState med information om körningen, till exempel .NET-version och Azure-miljöinformation, om tillämpligt. |
Sant |
LäggTillAutomatisktInsamladMetrikExtraktor | Aktivera/inaktivera AutoCollectedMetrics extractor . Den här telemetriprocessorn skickar föraggregerade mått om begäranden/beroenden innan sampling sker. |
Sant |
BegärRapporteringsalternativ.SpåraUndantag | Aktivera/inaktivera rapportering av ohanterad undantagsspårning av modulen för insamling av begäranden. | False in netstandard2.0 (eftersom undantag spåras med ApplicationInsightsLoggerProvider ). Sant annars. |
AktiveraDiagnostikTelemetrimodul | Aktivera/inaktivera DiagnosticsTelemetryModule . Om du inaktiverar ignoreras följande inställningar: EnableHeartbeat , EnableAzureInstanceMetadataTelemetryModule och EnableAppServicesHeartbeatTelemetryModule . |
Sant |
Den senaste listan finns i de konfigurerbara inställningarna i ApplicationInsightsServiceOptions
.
Konfigurationsrekommendering för Microsoft.ApplicationInsights.AspNetCore SDK 2.15.0 och senare
I Microsoft.ApplicationInsights.AspNetCore SDK version 2.15.0 och senare konfigurerar du alla tillgängliga inställningar i ApplicationInsightsServiceOptions
, inklusive ConnectionString
. Använd programmets IConfiguration
instans. Inställningarna måste vara under avsnittet ApplicationInsights
, som du ser i följande exempel. Följande avsnitt från appsettings.json konfigurerar anslutningssträng och inaktiverar insamling av anpassningsbar sampling och prestandaräknare.
{
"ApplicationInsights": {
"ConnectionString": "InstrumentationKey=00000000-0000-0000-0000-000000000000",
"EnableAdaptiveSampling": false,
"EnablePerformanceCounterCollectionModule": false
}
}
Om builder.Services.AddApplicationInsightsTelemetry(aiOptions)
för ASP.NET Core 6.0 eller services.AddApplicationInsightsTelemetry(aiOptions)
för ASP.NET Core 3.1 och tidigare används åsidosätter den inställningarna från Microsoft.Extensions.Configuration.IConfiguration
.
Provtagning
Application Insights SDK för ASP.NET Core stöder både fast och anpassningsbar sampling. Som standard är anpassningsbar sampling aktiverat.
Mer information finns i Konfigurera anpassningsbar sampling för ASP.NET Core-program.
Lägg till TelemetryInitializers
När du vill utöka telemetri med mer information använder du telemetriinitierare.
Lägg till alla nya TelemetryInitializer
i containern DependencyInjection
enligt följande kod. SDK:et hämtar automatiskt alla TelemetryInitializer
som läggs till i containern DependencyInjection
.
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddSingleton<ITelemetryInitializer, MyCustomTelemetryInitializer>();
var app = builder.Build();
Kommentar
builder.Services.AddSingleton<ITelemetryInitializer, MyCustomTelemetryInitializer>();
fungerar för enkla initialiserare. För andra builder.Services.AddSingleton(new MyCustomTelemetryInitializer() { fieldName = "myfieldName" });
krävs.
Ta bort telemetriinitialiserare
Telemetriinitierare finns som standard. Om du vill ta bort alla eller specifika telemetriinitierare använder du följande exempelkod efter att du har anropat AddApplicationInsightsTelemetry()
.
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddApplicationInsightsTelemetry();
// Remove a specific built-in telemetry initializer
var tiToRemove = builder.Services.FirstOrDefault<ServiceDescriptor>
(t => t.ImplementationType == typeof(AspNetCoreEnvironmentTelemetryInitializer));
if (tiToRemove != null)
{
builder.Services.Remove(tiToRemove);
}
// Remove all initializers
// This requires importing namespace by using Microsoft.Extensions.DependencyInjection.Extensions;
builder.Services.RemoveAll(typeof(ITelemetryInitializer));
var app = builder.Build();
Lägga till telemetriprocessorer
Du kan lägga till anpassade telemetriprocessorer TelemetryConfiguration
i med hjälp av tilläggsmetoden AddApplicationInsightsTelemetryProcessor
på IServiceCollection
. Du använder telemetriprocessorer i avancerade filtreringsscenarier. Använd följande exempel:
var builder = WebApplication.CreateBuilder(args);
// ...
builder.Services.AddApplicationInsightsTelemetry();
builder.Services.AddApplicationInsightsTelemetryProcessor<MyFirstCustomTelemetryProcessor>();
// If you have more processors:
builder.Services.AddApplicationInsightsTelemetryProcessor<MySecondCustomTelemetryProcessor>();
var app = builder.Build();
Konfigurera eller ta bort standardtelemetrimoduler
Application Insights samlar automatiskt in telemetri om specifika arbetsbelastningar utan att användaren behöver manuell spårning.
Som standard är följande moduler för automatisk insamling aktiverade. Dessa moduler ansvarar för att automatiskt samla in telemetri. Du kan inaktivera eller konfigurera dem för att ändra deras standardbeteende.
-
RequestTrackingTelemetryModule
: Samlar in RequestTelemetry från inkommande webbbegäranden. -
DependencyTrackingTelemetryModule
: Samlar in DependencyTelemetry från utgående HTTP-anrop och SQL-anrop. -
PerformanceCollectorModule
: Samlar in Windows PerformanceCounters. -
QuickPulseTelemetryModule
: Samlar in telemetri som ska visas i fönstret livemått. -
AppServicesHeartbeatTelemetryModule
: Samlar in pulsslag (som skickas som anpassade mått) om App Service-miljön där programmet finns. -
AzureInstanceMetadataTelemetryModule
: Samlar in pulsslag (som skickas som anpassade mått) om den virtuella Azure-datormiljö där programmet finns. -
EventCounterCollectionModule
: Samlar in EventCounters. Den här modulen är en ny funktion och är tillgänglig i SDK version 2.8.0 och senare.
Om du vill konfigurera alla standardvärden TelemetryModule
använder du tilläggsmetoden ConfigureTelemetryModule<T>
på IServiceCollection
, som du ser i följande exempel:
using Microsoft.ApplicationInsights.DependencyCollector;
using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddApplicationInsightsTelemetry();
// The following configures DependencyTrackingTelemetryModule.
// Similarly, any other default modules can be configured.
builder.Services.ConfigureTelemetryModule<DependencyTrackingTelemetryModule>((module, o) =>
{
module.EnableW3CHeadersInjection = true;
});
// The following removes all default counters from EventCounterCollectionModule, and adds a single one.
builder.Services.ConfigureTelemetryModule<EventCounterCollectionModule>((module, o) =>
{
module.Counters.Add(new EventCounterCollectionRequest("System.Runtime", "gen-0-size"));
});
// The following removes PerformanceCollectorModule to disable perf-counter collection.
// Similarly, any other default modules can be removed.
var performanceCounterService = builder.Services.FirstOrDefault<ServiceDescriptor>(t => t.ImplementationType == typeof(PerformanceCollectorModule));
if (performanceCounterService != null)
{
builder.Services.Remove(performanceCounterService);
}
var app = builder.Build();
I version 2.12.2 och senare ApplicationInsightsServiceOptions
innehåller ett enkelt alternativ för att inaktivera någon av standardmodulerna.
Konfigurera en telemetrikanal
Standardtelemetrikanalen är ServerTelemetryChannel
. I följande exempel visas hur du åsidosätter det.
using Microsoft.ApplicationInsights.Channel;
var builder = WebApplication.CreateBuilder(args);
// Use the following to replace the default channel with InMemoryChannel.
// This can also be applied to ServerTelemetryChannel.
builder.Services.AddSingleton(typeof(ITelemetryChannel), new InMemoryChannel() {MaxTelemetryBufferCapacity = 19898 });
builder.Services.AddApplicationInsightsTelemetry();
var app = builder.Build();
Kommentar
Om du vill rensa bufferten läser du Rensa data. Du kan till exempel behöva tömma bufferten om du använder SDK:t i ett program som stängs av.
Inaktivera telemetri dynamiskt
Om du vill inaktivera telemetri villkorligt och dynamiskt kan du lösa instansen TelemetryConfiguration
med en ASP.NET Core-beroendeinmatningscontainer var som helst i koden och ange flaggan på den DisableTelemetry
.
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddApplicationInsightsTelemetry();
// any custom configuration can be done here:
builder.Services.Configure<TelemetryConfiguration>(x => x.DisableTelemetry = true);
var app = builder.Build();
Föregående kodexempel förhindrar sändning av telemetri till Application Insights. Det hindrar inte automatiska insamlingsmoduler från att samla in telemetri. Om du vill ta bort en viss modul för automatisk insamling läser du Ta bort telemetrimodulen.
Felsökning
Se den dedikerade felsökningsartikeln.
Testa anslutningen mellan programvärden och inmatningstjänsten
Application Insights SDK:er och agenter skickar telemetri för att matas in som REST-anrop till våra inmatningsslutpunkter. Du kan testa anslutningen från webbservern eller programvärddatorn till slutpunkterna för inmatningstjänsten med hjälp av råa REST-klienter från PowerShell- eller curl-kommandon. Se Felsöka programtelemetri som saknas i Azure Monitor Application Insights.
SDK med öppen källkod
De senaste uppdateringarna och felkorrigeringarna finns i viktig information.
Viktig information
För version 2.12 och senare: .NET SDK:er (inklusive ASP.NET, ASP.NET Core och loggningskort)
Våra tjänstuppdateringar sammanfattar även större Förbättringar av Application Insights.
Nästa steg
- Mer information om vanliga frågor och svar finns i Vanliga frågor och svar om Application Insights för ASP.NET Core
- Kontrollera att du kör en version av Application Insights SDK som stöds .
- Utforska användarflöden för att förstå hur användare rör sig genom din app.
- Konfigurera en samling ögonblicksbilder för att se tillståndet för källkod och variabler när ett undantag utlöses.
- Använd API :et för att skicka egna händelser och mått för en detaljerad vy över appens prestanda och användning.
- Använd tillgänglighetstester för att kontrollera din app hela tiden från hela världen.
- Lär dig mer om beroendeinmatning i ASP.NET Core.