A Snapshot Debugger engedélyezése .NET- és .NET Core-alkalmazásokhoz a Azure Functions
A Snapshot Debugger jelenleg ASP.NET és ASP.NET Core olyan alkalmazásokhoz működik, amelyek windowsos szolgáltatáscsomagokon futó Azure Functions futnak.
A Snapshot Debugger használatakor javasoljuk, hogy az alkalmazást az Alapszintű szolgáltatási szinten vagy annál magasabb szinten futtassa.
A legtöbb alkalmazás esetében az ingyenes és a megosztott szolgáltatási szint nem rendelkezik elegendő memóriával vagy lemezterülettel a pillanatképek mentéséhez.
Előfeltétel
Az Application Insights monitorozásának engedélyezése a Functions-alkalmazásban
Pillanatkép-hibakereső engedélyezése
A Snapshot Debugger függvényalkalmazásban való engedélyezéséhez adja hozzá a tulajdonságot a snapshotConfiguration
host.json fájlhoz, és helyezze újra üzembe a függvényt. Például:
{
"version": "2.0",
"logging": {
"applicationInsights": {
"snapshotConfiguration": {
"isEnabled": true
}
}
}
}
A pillanatkép-hibakereső előre telepítve van a Azure Functions futtatókörnyezet részeként, és alapértelmezés szerint le van tiltva. Mivel ez szerepel a futtatókörnyezetben, nem kell további NuGet-csomagokat vagy alkalmazásbeállításokat hozzáadnia.
Az egyszerű .NET Core-függvényalkalmazásban a következő példa, .csproj
a , {Your}Function.cs
és host.json
a Snapshot Debugger engedélyezve van:
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
}
}
}
}
Pillanatkép-hibakereső engedélyezése más felhőkhöz
Jelenleg az egyetlen olyan régió, amely végpontmódosítást igényel, a21Vianet által üzemeltetett Azure Government és a Microsoft Azure.
Az alábbi példa az host.json
US Government Cloud-ügynök végpontjának frissítését mutatja be:
{
"version": "2.0",
"logging": {
"applicationInsights": {
"samplingExcludedTypes": "Request",
"samplingSettings": {
"isEnabled": true
},
"snapshotConfiguration": {
"isEnabled": true,
"agentEndpoint": "https://snapshot.monitor.azure.us"
}
}
}
}
A Snapshot Debugger-ügynök végpontjának támogatott felülbírálásai:
Tulajdonság | USA kormányzati felhője | Kínai felhő |
---|---|---|
AgentEndpoint | https://snapshot.monitor.azure.us |
https://snapshot.monitor.azure.cn |
Pillanatkép-hibakereső letiltása
A Snapshot Debugger függvényalkalmazásban való letiltásához frissítse a host.json
fájlt úgy, hogy a tulajdonságot a snapshotConfiguration.isEnabled
értékre false
állítja.
{
"version": "2.0",
"logging": {
"applicationInsights": {
"snapshotConfiguration": {
"isEnabled": false
}
}
}
}
Azt javasoljuk, hogy az alkalmazás kivételeinek diagnosztikájának megkönnyítése érdekében minden alkalmazásban engedélyezve legyen a Snapshot Debugger.
Következő lépések
- Hozzon létre egy kivételt kiváltó forgalmat az alkalmazás felé. Ezután várjon 10–15 percet, amíg a pillanatképek el lesznek küldve az Application Insights-példányra.
- Pillanatképek megtekintése a Azure Portal.
- A Snapshot Debugger konfigurációjának testreszabása a függvényalkalmazás használati esete alapján. További információ: Pillanatkép-konfiguráció a host.json fájlban.
- A Pillanatkép-hibakereső hibáinak elhárításához lásd: Pillanatkép-hibakereső hibaelhárítása.