Aktivera felsökningsprogram för ögonblicksbilder för .NET- och .NET Core-appar i Azure Functions
Snapshot Debugger fungerar för närvarande för ASP.NET och ASP.NET Core appar som körs på Azure Functions i Windows-tjänstplaner.
Vi rekommenderar att du kör ditt program på basic-tjänstnivån eller högre när du använder Snapshot Debugger.
För de flesta program har nivåerna Kostnadsfri och Delad tjänst inte tillräckligt med minne eller diskutrymme för att spara ögonblicksbilder.
Förutsättning
Aktivera Application Insights-övervakning i din Functions-app
Aktivera felsökningsprogram för ögonblicksbilder
Om du vill aktivera Snapshot Debugger i functions-appen lägger du till snapshotConfiguration
egenskapen i filen host.json och distribuerar om funktionen. Exempel:
{
"version": "2.0",
"logging": {
"applicationInsights": {
"snapshotConfiguration": {
"isEnabled": true
}
}
}
}
Felsökningsprogrammet för ögonblicksbilder är förinstallerat som en del av Azure Functions-körningen och är inaktiverat som standard. Eftersom den ingår i körningen behöver du inte lägga till extra NuGet-paket eller programinställningar.
I det enkla .NET Core-funktionsappexemplet som följer, .csproj
, {Your}Function.cs
och host.json
har Snapshot Debugger aktiverat:
Project.csproj
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
<AzureFunctionsVersion>v2</AzureFunctionsVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Sdk.Functions" Version="1.0.31" />
</ItemGroup>
<ItemGroup>
<None Update="host.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="local.settings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</None>
</ItemGroup>
</Project>
{Your}Function.cs
using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Logging;
namespace SnapshotCollectorAzureFunction
{
public static class ExceptionFunction
{
[FunctionName("ExceptionFunction")]
public static Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
throw new NotImplementedException("Dummy");
}
}
}
Host.json
{
"version": "2.0",
"logging": {
"applicationInsights": {
"samplingExcludedTypes": "Request",
"samplingSettings": {
"isEnabled": true
},
"snapshotConfiguration": {
"isEnabled": true
}
}
}
}
Aktivera felsökningsprogram för ögonblicksbilder för andra moln
För närvarande är de enda regioner som kräver slutpunktsändringar Azure Government och Microsoft Azure drivs av 21Vianet.
I följande exempel visas den host.json
uppdaterade med US Government Cloud-agentens slutpunkt:
{
"version": "2.0",
"logging": {
"applicationInsights": {
"samplingExcludedTypes": "Request",
"samplingSettings": {
"isEnabled": true
},
"snapshotConfiguration": {
"isEnabled": true,
"agentEndpoint": "https://snapshot.monitor.azure.us"
}
}
}
}
Här är de åsidosättningar som stöds av agentslutpunkten för ögonblicksbildsfelsökaren:
Egenskap | US Government Cloud | China Cloud |
---|---|---|
AgentEndpoint | https://snapshot.monitor.azure.us |
https://snapshot.monitor.azure.cn |
Inaktivera felsökningsprogram för ögonblicksbilder
Om du vill inaktivera felsökningsprogrammet för ögonblicksbilder i Functions-appen uppdaterar du host.json
filen genom att ange snapshotConfiguration.isEnabled
egenskapen till false
.
{
"version": "2.0",
"logging": {
"applicationInsights": {
"snapshotConfiguration": {
"isEnabled": false
}
}
}
}
Vi rekommenderar att du har aktiverat Snapshot Debugger på alla dina appar för att underlätta diagnostiken av programfel.
Nästa steg
- Generera trafik till ditt program som kan utlösa ett undantag. Vänta sedan 10 till 15 minuter innan ögonblicksbilder skickas till Application Insights-instansen.
- Visa ögonblicksbilder i Azure Portal.
- Anpassa konfigurationen av ögonblicksbildsfelsökaren baserat på ditt användningsfall i functions-appen. Mer information finns i Konfiguration av ögonblicksbilder i host.json.
- Mer information om felsökning av problem med felsökning av ögonblicksbilder finns i Felsökning av ögonblicksbilder.