Monitorování výkonu Azure App ServiceMonitor Azure App Service performance

Povolení monitorování webových aplikací založených na .NET a .NET Core běžících na Azure App Services je teď jednodušší než kdy dřív.Enabling monitoring on your .NET and .NET Core based web applications running on Azure App Services is now easier than ever. Vzhledem k tomu, že jste předtím museli ručně nainstalovat rozšíření lokality, je ve výchozím nastavení do image služby App Service standardně integrováno nejnovější rozšíření nebo agent.Whereas previously you needed to manually install a site extension, the latest extension/agent is now built into the app service image by default. Tento článek vás provede povolením Application Insights monitorování a poskytuje předběžné pokyny pro automatizaci procesu pro rozsáhlá nasazení.This article will walk you through enabling Application Insights monitoring as well as provide preliminary guidance for automating the process for large-scale deployments.

Poznámka

Ruční přidání rozšíření Application Insights webu prostřednictvímrozšíření nástrojů > pro vývoj je zastaralé.Manually adding an Application Insights site extension via Development Tools > Extensions is deprecated. Tato metoda instalace rozšíření byla závislá na ruční aktualizaci pro každou novou verzi.This method of extension installation was dependent on manual updates for each new version. Nejnovější stabilní verze rozšíření je teď předinstalována jako součást image App Service.The latest stable release of the extension is now preinstalled as part of the App Service image. Soubory jsou umístěny v d:\Program Files (x86)\SiteExtensions\ApplicationInsightsAgent a jsou automaticky aktualizovány s každou stabilní verzí.The files are located in d:\Program Files (x86)\SiteExtensions\ApplicationInsightsAgent and are automatically updated with each stable release. Pokud budete postupovat podle pokynů na základě agentů a zapnout monitorování níže, automaticky se odebere zastaralé rozšíření za vás.If you follow the agent based instructions to enable monitoring below, it will automatically remove the deprecated extension for you.

Povolení Application InsightsEnable Application Insights

Existují dva způsoby, jak povolit monitorování aplikací pro hostované aplikace Azure App Services:There are two ways to enable application monitoring for Azure App Services hosted applications:

  • Monitorování aplikací na základě agentů (ApplicationInsightsAgent).Agent-based application monitoring (ApplicationInsightsAgent).

    • Tato metoda je nejjednodušší pro povolení a není nutná žádná pokročilá konfigurace.This method is the easiest to enable, and no advanced configuration is required. Často se označuje jako monitorování za běhu.It is often referred to as "runtime" monitoring. V případě Azure App Services doporučujeme, abyste aspoň povolili tuto úroveň monitorování a pak na základě vašeho konkrétního scénáře mohli vyhodnotit, jestli je potřeba rozšířené monitorování prostřednictvím ruční instrumentace.For Azure App Services we recommend at a minimum enabling this level of monitoring, and then based on your specific scenario you can evaluate whether more advanced monitoring through manual instrumentation is needed.
  • Ruční instrumentace aplikace pomocí kódu instalací sady Application Insights SDK.Manually instrumenting the application through code by installing the Application Insights SDK.

Poznámka

Pokud se zjistí jenom monitorování na základě agentů a ruční instrumentaci založené na sadě SDK, bude se dodržovat jenom ruční nastavení instrumentace.If both agent based monitoring and manual SDK based instrumentation is detected only the manual instrumentation settings will be honored. K tomu je potřeba zabránit odeslání duplicitních dat.This is to prevent duplicate data from sent. Další informace o této části najdete v části řešení potíží níže.To learn more about this check out the troubleshooting section below.

Povolit monitorování na základě agentů pro aplikace .NETEnable agent-based monitoring for .NET applications

Poznámka

Kombinace APPINSIGHTS_JAVASCRIPT_ENABLED a urlCompression se nepodporuje.The combination of APPINSIGHTS_JAVASCRIPT_ENABLED and urlCompression is not supported. Další informace najdete v tématu Vysvětlení v části Poradce při potížích.For more info see the explanation in the troubleshooting section.

  1. Vyberte Application Insights v Ovládacích panelech Azure pro vaši službu App Service.Select Application Insights in the Azure control panel for your app service.

    V části nastavení vyberte Application Insights

    • Pokud jste ještě nevytvořili prostředek Application Insights pro tuto aplikaci, vyberte možnost vytvořit nový prostředek.Choose to create a new resource, unless you already set up an Application Insights resource for this application.

      Poznámka

      Když kliknete na OK , vytvoří se nový prostředek, zobrazí se výzva k použití nastavení monitorování.When you click OK to create the new resource you will be prompted to Apply monitoring settings. Když vyberete pokračovat , připojí se k vaší službě App service nový Application Insights prostředek. tím se taky aktivuje restartování služby App Service.Selecting Continue will link your new Application Insights resource to your app service, doing so will also trigger a restart of your app service.

      Používejte webovou aplikaci.

  2. Jakmile určíte, který prostředek se má použít, můžete zvolit, jak má Application Insights shromažďovat data na platformu pro vaši aplikaci.After specifying which resource to use, you can choose how you want application insights to collect data per platform for your application. Monitorování aplikací ASP.NET se používá ve výchozím nastavení se dvěma různými úrovněmi shromažďování.ASP.NET app monitoring is on-by-default with two different levels of collection.

    Zvolit možnosti na platformu

    • Úroveň kolekce .NET Basic nabízí základní možnosti APM s jednou instancí..NET Basic collection level offers essential single-instance APM capabilities.

    • Úroveň kolekce doporučená pro .NET:.NET Recommended collection level:

      • Přidá trendy využití procesoru, paměti a vstupně-výstupních operací.Adds CPU, memory, and I/O usage trends.
      • Koreluje mikroslužby napříč hranicemi požadavků a závislostí.Correlates micro-services across request/dependency boundaries.
      • Shromažďuje trendy využití a umožňuje korelaci z výsledků dostupnosti až po transakce.Collects usage trends, and enables correlation from availability results to transactions.
      • Shromažďuje výjimky neošetřené hostitelským procesem.Collects exceptions unhandled by the host process.
      • Při použití vzorkování vylepšuje přesnost metriky APM při zatížení.Improves APM metrics accuracy under load, when sampling is used.
  3. Chcete-li nakonfigurovat nastavení jako vzorkování, které byste mohli dříve řídit prostřednictvím souboru ApplicationInsights. config, můžete nyní s těmito nastaveními pracovat pomocí nastavení aplikace s odpovídající předponou.To configure settings like sampling, which you could previously control via the applicationinsights.config file you can now interact with those same settings via Application settings with a corresponding prefix.

    • Chcete-li například změnit procento počátečního vzorkování, můžete vytvořit nastavení aplikace pro: MicrosoftAppInsights_AdaptiveSamplingTelemetryProcessor_InitialSamplingPercentage a 100hodnotu.For example, to change the initial sampling percentage, you can create an Application setting of: MicrosoftAppInsights_AdaptiveSamplingTelemetryProcessor_InitialSamplingPercentage and a value of 100.

    • Seznam podporovaných nastavení procesoru telemetrie pro adaptivní vzorkování můžete zobrazit v kódu a v související dokumentaci.For the list of supported adaptive sampling telemetry processor settings, you can consult the code and associated documentation.

Povolit monitorování na základě agentů pro aplikace .NET CoreEnable agent-based monitoring for .NET Core applications

Podporovány jsou následující verze rozhraní .NET Core: ASP.NET Core 2,0, ASP.NET Core 2,1, ASP.NET Core 2,2The following versions of .NET Core are supported: ASP.NET Core 2.0, ASP.NET Core 2.1, ASP.NET Core 2.2

Cílení na plnou verzi rozhraní .NET Core, samostatné nasazení a ASP.NET Core 3,0 se v současnosti nepodporují pomocí monitorování založeného na agentech nebo rozšíření.Targeting the full framework from .NET Core, self-contained deployment, and ASP.NET Core 3.0 are currently not supported with agent/extension based monitoring. (Ruční instrumentace přes kód bude fungovat ve všech předchozích scénářích.)(Manual instrumentation via code will work in all of the previous scenarios.)

  1. Vyberte Application Insights v Ovládacích panelech Azure pro vaši službu App Service.Select Application Insights in the Azure control panel for your app service.

    V části nastavení vyberte Application Insights

    • Pokud jste ještě nevytvořili prostředek Application Insights pro tuto aplikaci, vyberte možnost vytvořit nový prostředek.Choose to create a new resource, unless you already set up an Application Insights resource for this application.

      Poznámka

      Když kliknete na OK , vytvoří se nový prostředek, zobrazí se výzva k použití nastavení monitorování.When you click OK to create the new resource you will be prompted to Apply monitoring settings. Když vyberete pokračovat , připojí se k vaší službě App service nový Application Insights prostředek. tím se taky aktivuje restartování služby App Service.Selecting Continue will link your new Application Insights resource to your app service, doing so will also trigger a restart of your app service.

      Používejte webovou aplikaci.

  2. Jakmile určíte, který prostředek se má použít, můžete zvolit způsob, jakým má Application Insights shromažďovat data na platformu pro vaši aplikaci.After specifying which resource to use, you can choose how you want Application Insights to collect data per platform for your application. .NET Core nabízí doporučenou kolekci nebo zakázanou pro .net Core 2,0, 2,1 a 2,2..NET Core offers Recommended collection or Disabled for .NET Core 2.0, 2.1, and 2.2.

    Zvolit možnosti na platformu

Povolit monitorování na straně klienta pro aplikace .NETEnable client-side monitoring for .NET applications

Monitorování na straně klienta je výslovný souhlas pro ASP.NET.Client-side monitoring is opt-in for ASP.NET. Postup při povolování monitorování na straně klienta:To enable client-side monitoring:

  • Vyberte nastavení > * * * * nastavení aplikace * * * *.Select Settings >** **Application settings****
    • V části nastavení aplikace přidejte název a hodnotu Nastavení nové aplikace :Under Application settings, add a new app setting name and value:

      Jméno:APPINSIGHTS_JAVASCRIPT_ENABLEDName: APPINSIGHTS_JAVASCRIPT_ENABLED

      Hodnota: trueValue: true

    • Kliknutím na Uložit uložte nastavení a kliknutím na Restartovat restartujte aplikaci.Save the settings and Restart your app.

Snímek obrazovky uživatelského rozhraní nastavení aplikace

Chcete-li zakázat monitorování na straně klienta, buď z nastavení aplikace odeberte dvojici hodnoty klíče, nebo hodnotu nastavte na hodnotu NEPRAVDA.To disable client-side monitoring either remove the associated key value pair from the Application settings, or set the value to false.

Povolit monitorování na straně klienta pro aplikace .NET CoreEnable client-side monitoring for .NET Core applications

Monitorování na straně klienta je ve výchozím nastavení povolené pro aplikace .NET Core s doporučenou kolekcíbez ohledu na to, jestli je přítomné nastavení aplikace APPINSIGHTS_JAVASCRIPT_ENABLED.Client-side monitoring is enabled by default for .NET Core apps with Recommended collection, regardless of whether the app setting 'APPINSIGHTS_JAVASCRIPT_ENABLED' is present.

Pokud z nějakého důvodu chcete vypnout monitorování na straně klienta:If for some reason you would like to disable client-side monitoring:

  • Vybrat Nastavení > aplikaceSelect Settings > Application settings
    • V části nastavení aplikace přidejte název a hodnotu Nastavení nové aplikace :Under Application settings, add a new app setting name and value:

      Jméno:APPINSIGHTS_JAVASCRIPT_ENABLEDname: APPINSIGHTS_JAVASCRIPT_ENABLED

      Hodnota: falseValue: false

    • Kliknutím na Uložit uložte nastavení a kliknutím na Restartovat restartujte aplikaci.Save the settings and Restart your app.

Snímek obrazovky uživatelského rozhraní nastavení aplikace

Automatizace monitorováníAutomate monitoring

Aby bylo možné povolit shromažďování telemetrie s Application Insights, je třeba nastavit pouze nastavení aplikace:In order to enable telemetry collection with Application Insights, only the Application settings need to be set:

App Service nastavení aplikace s dostupnými nastaveními Application Insights

Definice nastavení aplikaceApplication settings definitions

Název nastavení aplikaceApp setting name DefiniceDefinition HodnotaValue
ApplicationInsightsAgent_EXTENSION_VERSIONApplicationInsightsAgent_EXTENSION_VERSION Hlavní rozšíření, které řídí monitorování za běhu.Main extension, which controls runtime monitoring. ~2
XDT_MicrosoftApplicationInsights_ModeXDT_MicrosoftApplicationInsights_Mode Jenom ve výchozím režimu jsou k dispozici základní funkce, aby se zajistil optimální výkon.In default mode only, essential features are enabled in order to insure optimal performance. defaultnebo recommended.default or recommended.
InstrumentationEngine_EXTENSION_VERSIONInstrumentationEngine_EXTENSION_VERSION Určuje, zda bude modul InstrumentationEngine binárního zápisu zapnutý.Controls if the binary-rewrite engine InstrumentationEngine will be turned on. Toto nastavení má vliv na výkon a má vliv na čas spuštění a spuštění.This setting has performance implications and impacts cold start/startup time. ~1
XDT_MicrosoftApplicationInsights_BaseExtensionsXDT_MicrosoftApplicationInsights_BaseExtensions Ovládací prvky, pokud se v SQL & text tabulky Azure bude zachytávat spolu s voláními závislostí.Controls if SQL & Azure table text will be captured along with the dependency calls. Upozornění výkonu: Toto nastavení vyžaduje InstrumentationEngine.Performance warning: this setting requires the InstrumentationEngine. ~1

App Service nastavení aplikace s Azure Resource ManagerApp Service Application settings with Azure Resource Manager

Nastavení aplikace pro App Services lze spravovat a konfigurovat pomocí šablon Azure Resource Manager.Application settings for App Services can be managed and configured with Azure Resource Manager templates. Tuto metodu lze použít při nasazování nových App Servicech prostředků pomocí Automatizace Azure Resource Manager nebo pro úpravu nastavení existujících prostředků.This method can be used when deploying new App Service resources with Azure Resource Manager automation, or for modifying the settings of existing resources.

Základní struktura JSON nastavení aplikace pro službu App Service je následující:The basic structure of the application settings JSON for an app service is below:

      "resources": [
        {
          "name": "appsettings",
          "type": "config",
          "apiVersion": "2015-08-01",
          "dependsOn": [
            "[resourceId('Microsoft.Web/sites', variables('webSiteName'))]"
          ],
          "tags": {
            "displayName": "Application Insights Settings"
          },
          "properties": {
            "key1": "value1",
            "key2": "value2"
          }
        }
      ]

Příklad šablony Azure Resource Manager s nastavením aplikace nakonfigurovaným pro Application Insights může být tato Šablona užitečná, konkrétně část od řádku 238.For an example of an Azure Resource Manager template with Application settings configured for Application Insights, this template can be helpful, specifically the section starting on line 238.

Pokud chcete vytvořit šablonu Azure Resource Manager se všemi nakonfigurovanými výchozími nastaveními Application Insights, spusťte proces jako kdybyste vytvořili novou webovou aplikaci s povoleným Application Insights.To create an Azure Resource Manager template with all the default Application Insights settings configured, begin the process as if you were going to create a new Web App with Application Insights enabled.

Vybrat Možnosti automatizaceSelect Automation options

Nabídka pro vytvoření webové aplikace v App Service

Tato možnost generuje nejnovější šablonu Azure Resource Manager se všemi požadovanými nakonfigurovanými nastaveními.This option generates the latest Azure Resource Manager template with all required settings configured.

Šablona webové aplikace App Service

Níže je ukázka, nahraďte všechny instance AppMonitoredSite s názvem vašeho webu:Below is a sample, replace all instances of AppMonitoredSite with your site name:

{
    "resources": [
        {
            "name": "[parameters('name')]",
            "type": "Microsoft.Web/sites",
            "properties": {
                "siteConfig": {
                    "appSettings": [
                        {
                            "name": "APPINSIGHTS_INSTRUMENTATIONKEY",
                            "value": "[reference('microsoft.insights/components/AppMonitoredSite', '2015-05-01').InstrumentationKey]"
                        },
                        {
                            "name": "ApplicationInsightsAgent_EXTENSION_VERSION",
                            "value": "~2"
                        }
                    ]
                },
                "name": "[parameters('name')]",
                "serverFarmId": "[concat('/subscriptions/', parameters('subscriptionId'),'/resourcegroups/', parameters('serverFarmResourceGroup'), '/providers/Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]",
                "hostingEnvironment": "[parameters('hostingEnvironment')]"
            },
            "dependsOn": [
                "[concat('Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]",
                "microsoft.insights/components/AppMonitoredSite"
            ],
            "apiVersion": "2016-03-01",
            "location": "[parameters('location')]"
        },
        {
            "apiVersion": "2016-09-01",
            "name": "[parameters('hostingPlanName')]",
            "type": "Microsoft.Web/serverfarms",
            "location": "[parameters('location')]",
            "properties": {
                "name": "[parameters('hostingPlanName')]",
                "workerSizeId": "[parameters('workerSize')]",
                "numberOfWorkers": "1",
                "hostingEnvironment": "[parameters('hostingEnvironment')]"
            },
            "sku": {
                "Tier": "[parameters('sku')]",
                "Name": "[parameters('skuCode')]"
            }
        },
        {
            "apiVersion": "2015-05-01",
            "name": "AppMonitoredSite",
            "type": "microsoft.insights/components",
            "location": "West US 2",
            "properties": {
                "ApplicationId": "[parameters('name')]",
                "Request_Source": "IbizaWebAppExtensionCreate"
            }
        }
    ],
    "parameters": {
        "name": {
            "type": "string"
        },
        "hostingPlanName": {
            "type": "string"
        },
        "hostingEnvironment": {
            "type": "string"
        },
        "location": {
            "type": "string"
        },
        "sku": {
            "type": "string"
        },
        "skuCode": {
            "type": "string"
        },
        "workerSize": {
            "type": "string"
        },
        "serverFarmResourceGroup": {
            "type": "string"
        },
        "subscriptionId": {
            "type": "string"
        }
    },
    "$schema": "https://schema.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0"
}

Poznámka

Šablona vygeneruje nastavení aplikace ve výchozím režimu.The template will generate application settings in “default” mode. Tento režim je optimalizovaný pro výkon, ale můžete upravit šablonu, aby se aktivovaly libovolné funkce, které dáváte přednost.This mode is performance optimized, though you can modify the template to activate whichever features you prefer.

Povolení přes PowerShellEnabling through PowerShell

Aby bylo možné povolit monitorování aplikací prostřednictvím prostředí PowerShell, je nutné změnit pouze nastavení základní aplikace.In order to enable the application monitoring through PowerShell, only the underlying application settings need to be changed. Níže je ukázka, která umožňuje monitorování aplikací pro web s názvem "AppMonitoredSite" ve skupině prostředků "AppMonitoredRG" a konfiguruje data, která se mají odeslat do klíče instrumentace "012345678-abcd-ef01-2345-6789abcd".Below is a sample, which enables application monitoring for a website called "AppMonitoredSite" in the resource group "AppMonitoredRG", and configures data to be sent to the "012345678-abcd-ef01-2345-6789abcd" instrumentation key.

Poznámka

Tento článek je aktualizovaný a využívá nový modul Az Azure PowerShellu.This article has been updated to use the new Azure PowerShell Az module. Můžete dál využívat modul AzureRM, který bude dostávat opravy chyb nejméně do prosince 2020.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Další informace o kompatibilitě nového modulu Az a modulu AzureRM najdete v tématu Seznámení s novým modulem Az Azure PowerShellu.To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Pokyny k instalaci modulu Az najdete v tématu věnovaném instalaci Azure PowerShellu.For Az module installation instructions, see Install Azure PowerShell.

$app = Get-AzWebApp -ResourceGroupName "AppMonitoredRG" -Name "AppMonitoredSite" -ErrorAction Stop
$newAppSettings = @{} # case-insensitive hash map
$app.SiteConfig.AppSettings | %{$newAppSettings[$_.Name] = $_.Value} #preserve non Application Insights Application settings.
$newAppSettings["APPINSIGHTS_INSTRUMENTATIONKEY"] = "012345678-abcd-ef01-2345-6789abcd"; # enable the ApplicationInsightsAgent
$newAppSettings["ApplicationInsightsAgent_EXTENSION_VERSION"] = "~2"; # enable the ApplicationInsightsAgent
$app = Set-AzWebApp -AppSettings $newAppSettings -ResourceGroupName $app.ResourceGroup -Name $app.Name -ErrorAction Stop

Upgradovat rozšíření nebo agenta monitorováníUpgrade monitoring extension/agent

Upgrade z verzí 2.8.9 a upUpgrading from versions 2.8.9 and up

Upgrade z verze 2.8.9 proběhne automaticky bez dalších akcí.Upgrading from version 2.8.9 happens automatically, without any additional actions. Nové bity monitorování se doručí na pozadí cílové službě App Service a při restartování aplikace se budou vyzvednout.The new monitoring bits are delivered in the background to the target app service, and on application restart they will be picked up.

Pokud chcete zjistit, kterou verzi rozšíření používáte, přejděte nahttp://yoursitename.scm.azurewebsites.net/ApplicationInsightsTo check which version of the extension you are running visit http://yoursitename.scm.azurewebsites.net/ApplicationInsights

Snímek obrazovky s cestou URL http://yoursitename.scm.azurewebsites.net/ApplicationInsights

Upgrade z verzí 1.0.0-2.6.5Upgrade from versions 1.0.0 - 2.6.5

Počínaje verzí 2.8.9 se používá předem nainstalovaná rozšíření webu.Starting with version 2.8.9 the pre-installed site extension is used. Pokud používáte starší verzi, můžete aktualizovat prostřednictvím jednoho ze dvou způsobů:If you are an earlier version, you can update via one of two ways:

  • Upgrade povolíte prostřednictvím portálu.Upgrade by enabling via the portal. (I v případě, že máte rozšíření Application Insights pro Azure App Service nainstalované, uživatelské rozhraní zobrazí jenom tlačítko Povolit .(Even if you have the Application Insights extension for Azure App Service installed, the UI shows only Enable button. Po pozadí bude staré rozšíření privátního webu odebráno.)Behind the scenes, the old private site extension will be removed.)

  • Upgrade prostřednictvím PowerShellu:Upgrade through PowerShell:

    1. Nastavte nastavení aplikace tak, aby povolovalo předinstalované rozšíření webu ApplicationInsightsAgent.Set the application settings to enable the pre-installed site extension ApplicationInsightsAgent. Viz povolení prostřednictvím PowerShellu.See Enabling through powershell.
    2. Ručně odeberte rozšíření privátního webu s názvem Application Insights příponu pro Azure App Service.Manually remove the private site extension named Application Insights extension for Azure App Service.

Pokud je upgrade proveden z verze před aplikací 2.5.1, zkontrolujte, zda jsou knihovny DLL ApplicationInsigths odebrány ze složky bin aplikace, v tématu Postup řešení potíží.If the upgrade is done from a version prior to 2.5.1, check that the ApplicationInsigths dlls are removed from the application bin folder see troubleshooting steps.

Řešení potížíTroubleshooting

Níže najdete naše podrobné pokyny k odstraňování potíží pro monitorování rozšíření/na základě agentů pro aplikace založené na platformě .NET a .NET Core běžící na Azure App Services.Below is our step-by-step troubleshooting guide for extension/agent based monitoring for .NET and .NET Core based applications running on Azure App Services.

Poznámka

Aplikace Java a Node. js se podporují jenom v Azure App Services prostřednictvím ruční instrumentace založené na sadě SDK, a proto se tyto kroky nevztahují na tyto scénáře.Java and Node.js applications are only supported on Azure App Services via manual SDK based instrumentation and therefore the steps below do not apply to these scenarios.

  1. Ověřte, že je aplikace monitorována ApplicationInsightsAgentprostřednictvím.Check that the application is monitored via ApplicationInsightsAgent.

    • Ověřte, ApplicationInsightsAgent_EXTENSION_VERSION že nastavení aplikace je nastavené na hodnotu ~ 2.Check that ApplicationInsightsAgent_EXTENSION_VERSION app setting is set to a value of "~2".
  2. Ujistěte se, že aplikace splňuje požadavky, které se mají monitorovat.Ensure that the application meets the requirements to be monitored.

    • Přejít nahttps://yoursitename.scm.azurewebsites.net/ApplicationInsightsBrowse to https://yoursitename.scm.azurewebsites.net/ApplicationInsights

    Snímek stránky https://yoursitename.scm.azurewebsites/applicationinsights výsledků

    • Potvrďte, Application Insights Extension Status že jePre-Installed Site Extension, version 2.8.12.1527, is running.Confirm that the Application Insights Extension Status is Pre-Installed Site Extension, version 2.8.12.1527, is running.

    • Potvrďte, že zdroj stavu existuje a vypadá takto:Status source D:\home\LogFiles\ApplicationInsights\status\status_RD0003FF0317B6_4248_1.jsonConfirm that the status source exists and looks like: Status source D:\home\LogFiles\ApplicationInsights\status\status_RD0003FF0317B6_4248_1.json

      • Pokud není k dispozici podobná hodnota, znamená to, že aplikace momentálně není spuštěná nebo není podporovaná.If a similar value is not present, it means the application is not currently running or is not supported. Chcete-li zajistit, aby aplikace běžela, zkuste ručně navštívit koncové body adresy URL nebo aplikace, čímž umožníte zpřístupnění běhových informací.To ensure that the application is running, try manually visiting the application url/application endpoints, which will allow the runtime information to become available.
    • Potvrďte IKeyExists , že jetrueConfirm that IKeyExists is true

      • Pokud má hodnotu false, přidejte do nastavení aplikace APPINSIGHTS_INSTRUMENTATIONKEY s identifikátorem GUID ikey.If it is false, add `APPINSIGHTS_INSTRUMENTATIONKEY with your ikey guid to your application settings.
    • Potvrďte, že nejsou k dispozici AppContainsDiagnosticSourceAssemblyžádné položky AppContainsAspNetTelemetryCorrelationAssemblypro AppAlreadyInstrumented, a.Confirm that there are no entries for AppAlreadyInstrumented, AppContainsDiagnosticSourceAssembly, and AppContainsAspNetTelemetryCorrelationAssembly.

      • Pokud existuje kterákoli z těchto položek, odeberte z aplikace následující balíčky: Microsoft.ApplicationInsights, System.Diagnostics.DiagnosticSource Microsoft.AspNet.TelemetryCorrelationa.If any of these entries exist, remove the following packages from your application: Microsoft.ApplicationInsights, System.Diagnostics.DiagnosticSource, and Microsoft.AspNet.TelemetryCorrelation.

Následující tabulka obsahuje podrobnější vysvětlení toho, co tyto hodnoty znamenají, jejich základní příčiny a Doporučené opravy:The table below provides a more detailed explanation of what these values mean, their underlying causes, and recommended fixes:

Hodnota problémuProblem Value VysvětleníExplanation NapravitFix
AppAlreadyInstrumented:true Tato hodnota označuje, že rozšíření zjistilo, že některé aspekty sady SDK už v aplikaci existují a že se bude zálohovat.This value indicates that the extension detected that some aspect of the SDK is already present in the Application, and will back-off. Důvodem může být odkaz na System.Diagnostics.DiagnosticSource, Microsoft.AspNet.TelemetryCorrelation, neboMicrosoft.ApplicationInsightsIt can be due to a reference to System.Diagnostics.DiagnosticSource, Microsoft.AspNet.TelemetryCorrelation, or Microsoft.ApplicationInsights Odeberte odkazy.Remove the references. Některé z těchto odkazů jsou ve výchozím nastavení přidány z určitých šablon sady Visual Studio a starší verze sady Visual Studio mohou přidat odkazy Microsoft.ApplicationInsightsna.Some of these references are added by default from certain Visual Studio templates, and older versions of Visual Studio may add references to Microsoft.ApplicationInsights.
AppAlreadyInstrumented:true Pokud je aplikace cílena na rozhraní .NET Core 2,1 nebo 2,2 a odkazuje na soubor Microsoft. AspNetCore. All meta-package, pak Application Insights a rozšíření bude zase vypnuto.If the application is targeting .NET Core 2.1 or 2.2, and refers to Microsoft.AspNetCore.All meta-package, then it brings in Application Insights, and extension will back-off. Pro zákazníky s .NET Core 2.1, 2.2 se místo toho doporučuje použít meta-package Microsoft. AspNetCore. app.Customers on .NET Core 2.1,2.2 are recommended to use Microsoft.AspNetCore.App meta-package instead.
AppAlreadyInstrumented:true Tato hodnota může být také způsobena přítomností výše uvedených knihoven DLL ve složce aplikace z předchozího nasazení.This value can also be caused by the presence of the above dlls in the app folder from a previous deployment. Vyčistěte složku aplikace, abyste měli jistotu, že se odeberou tyto knihovny DLL.Clean the app folder to ensure that these dlls are removed.
AppContainsAspNetTelemetryCorrelationAssembly: true Tato hodnota označuje, že rozšíření zjistilo Microsoft.AspNet.TelemetryCorrelation odkazy na v aplikaci a bude se přepínat.This value indicates that extension detected references to Microsoft.AspNet.TelemetryCorrelation in the application, and will back-off. Odeberte odkaz.Remove the reference.
AppContainsDiagnosticSourceAssembly**:true Tato hodnota označuje, že rozšíření zjistilo System.Diagnostics.DiagnosticSource odkazy na v aplikaci a bude se přepínat.This value indicates that extension detected references to System.Diagnostics.DiagnosticSource in the application, and will back-off. Odeberte odkaz.Remove the reference.
IKeyExists:false Tato hodnota označuje, že klíč instrumentace není přítomen v AppSetting, APPINSIGHTS_INSTRUMENTATIONKEY.This value indicates that the instrumentation key is not present in the AppSetting, APPINSIGHTS_INSTRUMENTATIONKEY. Možné příčiny: Hodnoty mohou být omylem odstraněny, zapomněli jste nastavit hodnoty ve skriptu automatizace atd.Possible causes: The values may have been accidentally removed, forgot to set the values in automation script, etc. Ujistěte se, že se nastavení nachází v nastavení aplikace App Service.Make sure the setting is present in the App Service application settings.

APPINSIGHTS_JAVASCRIPT_ENABLED a urlCompression se nepodporují.APPINSIGHTS_JAVASCRIPT_ENABLED and urlCompression is not supported

Pokud používáte APPINSIGHTS_JAVASCRIPT_ENABLED = true v případech, kde je obsah kódovaný, může dojít k chybám jako:If you use APPINSIGHTS_JAVASCRIPT_ENABLED=true in cases where content is encoded, you might get errors like:

  • 500 Chyba při zápisu adresy URL500 URL rewrite error
  • Chyba modulu pro přepis adresy URL 500,53 s pravidly pro přepsání odchozího zápisu zprávy nelze použít, je-li obsah odpovědi HTTP kódován (' gzip ').500.53 URL rewrite module error with message Outbound rewrite rules cannot be applied when the content of the HTTP response is encoded ('gzip').

Je to proto, že nastavení aplikace APPINSIGHTS_JAVASCRIPT_ENABLED je nastavené na hodnotu true a kódování obsahu je přítomné současně.This is due to the APPINSIGHTS_JAVASCRIPT_ENABLED application setting being set to true and content-encoding being present at the same time. Tento scénář se ještě nepodporuje.This scenario is not supported yet. Alternativním řešením je odebrat APPINSIGHTS_JAVASCRIPT_ENABLED z nastavení aplikace.The workaround is to remove APPINSIGHTS_JAVASCRIPT_ENABLED from your application settings. To bohužel znamená, že pokud se pořád vyžaduje instrumentace JavaScriptu na straně klienta nebo prohlížeče, pro vaše webové stránky jsou nutné ruční odkazy na sadu SDK.Unfortunately this means that if client/browser-side JavaScript instrumentation is still required, manual SDK references are needed for your webpages. Postupujte prosím podle pokynů pro ruční instrumentaci pomocí sady JavaScript SDK.Please follow the instructions for manual instrumentation with the JavaScript SDK.

Nejnovější informace o Application Insights agenta nebo rozšíření najdete v poznámkách k verzi.For the latest information on the Application Insights agent/extension, check out the release notes.

Další krokyNext steps