Sdílet prostřednictvím


Schéma rozšíření diagnostiky Windows

Rozšíření Azure Diagnostics je agent ve službě Azure Monitor, který shromažďuje data monitorování z hostovaného operačního systému a úloh výpočetních prostředků Azure. Tento článek podrobně popisuje schéma používané pro konfiguraci rozšíření diagnostiky na virtuálních počítačích s Windows a dalších výpočetních prostředcích.

Poznámka:

Schéma v tomto článku je platné pro verze 1.3 a novější (Azure SDK 2.4 a novější). Novější oddíly konfigurace se komentují, aby se zobrazily v jaké verzi byly přidány. Verze 1.0 a 1.2 schématu byly archivovány a již nejsou k dispozici.

Schéma veřejného konfiguračního souboru

Stáhněte definici schématu veřejného konfiguračního souboru spuštěním následujícího příkazu PowerShellu:

(Get-AzureServiceAvailableExtension -ExtensionName 'PaaSDiagnostics' -ProviderNamespace 'Microsoft.Azure.Diagnostics').PublicConfigurationSchema | Out-File –Encoding utf8 -FilePath 'C:\temp\WadConfig.xsd'  

Běžné typy atributů

Atribut scheduledTransferPeriod se zobrazí v několika prvech. Jedná se o interval mezi plánovanými přenosy do úložiště zaokrouhleného nahoru na nejbližší minutu. Hodnota je datový typ Doby trvání XML.

DiagnosticsConfiguration Element

Strom: Root – DiagnosticsConfiguration

Přidáno ve verzi 1.3.

Prvek nejvyšší úrovně konfiguračního souboru diagnostiky.

Xmlns atributu – Obor názvů XML pro konfigurační soubor diagnostiky je:
http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration

Podřízené prvky Popis
PublicConfig Povinný: Zobrazit popis jinde na této stránce
PrivateConfig Nepovinné. Zobrazit popis jinde na této stránce
IsEnabled Logický. Zobrazit popis jinde na této stránce

PublicConfig Element

Strom: Root – DiagnosticsConfiguration – PublicConfig

Popisuje konfiguraci veřejné diagnostiky.

Podřízené prvky Popis
WadCfg Povinný: Zobrazit popis jinde na této stránce
StorageAccount Název účtu Služby Azure Storage pro ukládání dat. Při spouštění rutiny Set-AzureServiceDiagnosticsExtension lze také zadat jako parametr.
StorageType Může to být Tabulka, Objekt blob nebo TableAndBlob. Tabulka je výchozí. Při výběru TableAndBlob se diagnostická data zapisují dvakrát – jednou do každého typu.
LocalResourceDirectory Adresář na virtuálním počítači, kde agent monitorování ukládá data událostí. Pokud ne, nastaví se výchozí adresář:

Pro roli Pracovního procesu nebo webu: C:\Resources\<guid>\directory\<guid>.<RoleName.DiagnosticStore\

Pro virtuální počítač: C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.IaaSDiagnostics\<WADVersion>\WAD<WADVersion>

Požadované atributy jsou:

- path – Adresář v systému, který má azure Diagnostics používat.

- expandEnvironment – určuje, jestli se proměnné prostředí rozbalí v názvu cesty.

WadCFG Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG

Identifikuje a nakonfiguruje telemetrická data, která se mají shromažďovat.

DiagnosticMonitorConfiguration Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration

Požaduje se

Atributy Popis
overallQuotaInMB Maximální množství místa na místním disku, které může využívat různé typy diagnostických dat shromážděných službou Azure Diagnostics. Výchozí nastavení je 4096 MB.
useProxyServer Nakonfigurujte Azure Diagnostics tak, aby používala nastavení proxy serveru, jak je nastavené v nastavení Internet Exploreru.
potápí Přidáno ve verzi 1.5. Nepovinné. Odkazuje na umístění jímky a odesílá také diagnostická data pro všechny podřízené prvky, které podporují jímky. Příkladem jímky je Application Insights nebo Event Hubs. Poznámka: Pokud chcete, aby události nahrané do event Hubs měly ID prostředku, musíte přidat vlastnost resourceId v elementu Metriky .



Podřízené prvky Popis
CrashDumps Zobrazit popis jinde na této stránce
Diagnostické protokoly infrastruktury Povolte shromažďování protokolů vygenerovaných službou Azure Diagnostics. Protokoly diagnostické infrastruktury jsou užitečné pro řešení potíží se samotným diagnostickým systémem. Volitelné atributy jsou:

- scheduledTransferLogLevelFilter – Nakonfiguruje minimální úroveň závažnosti shromážděných protokolů.

- scheduledTransferPeriod – interval mezi plánovanými přenosy do úložiště zaokrouhlený nahoru na nejbližší minutu. Hodnota je datový typ Doby trvání XML.
Adresáře Zobrazit popis jinde na této stránce
EtwProviders Zobrazit popis jinde na této stránce
Metriky Zobrazit popis jinde na této stránce
PerformanceCounters Zobrazit popis jinde na této stránce
WindowsEventLog Zobrazit popis jinde na této stránce
DockerSources Zobrazit popis jinde na této stránce

CrashDumps Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – CrashDumps

Povolte kolekci výpisů stavu systému.

Atributy Popis
containerName Nepovinné. Název kontejneru objektů blob v účtu azure Storage, který se má použít k ukládání výpisů stavu systému.
crashDumpType Nepovinné. Nakonfiguruje Azure Diagnostics tak, aby shromažďovala minimální nebo úplné výpisy stavu systému.
directoryQuotaPercentage Nepovinné. Nakonfiguruje procento celkové hodnotyQuotaInMB tak, aby se na virtuálním počítači rezervovalo pro výpisy stavu systému.
Podřízené prvky Popis
CrashDumpConfiguration Povinný: Definuje hodnoty konfigurace pro každý proces.

Vyžaduje se také následující atribut:

processName – název procesu, pro který má Azure Diagnostics shromažďovat výpis stavu systému.

Element Adresáře

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – Adresáře

Povolí kolekci obsahu adresáře, protokoly žádostí o přístup služby IIS selhaly nebo protokoly služby IIS.

Volitelný atribut scheduledTransferPeriod . Viz vysvětlení dříve.

Podřízené prvky Popis
Protokoly služby IIS Zahrnutím tohoto elementu do konfigurace povolíte shromažďování protokolů služby IIS:

containerName – název kontejneru objektů blob v účtu služby Azure Storage, který se má použít k ukládání protokolů služby IIS.
FailedRequestLogs Zahrnutí tohoto prvku do konfigurace umožňuje shromažďování protokolů o neúspěšných požadavcích na web nebo aplikaci iis. V systému je také nutné povolit možnosti trasování. WebServer v souboru Web.config.
Zdroje dat Seznam adresářů, které chcete monitorovat.

DataSources Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – Adresáře – Zdroje dat

Seznam adresářů, které chcete monitorovat.

Podřízené prvky Popis
DirectoryConfiguration Povinný: Povinný atribut:

containerName – název kontejneru objektů blob ve vašem účtu Azure Storage, který se má použít k ukládání souborů protokolu.

DirectoryConfiguration Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – Adresáře – Zdroje dat – DirectoryConfiguration

Může obsahovat element Absolute nebo LocalResource , ale ne obojí.

Podřízené prvky Popis
Absolutní Absolutní cesta k adresáři, který chcete monitorovat. Jsou vyžadovány následující atributy:

- Cesta – absolutní cesta k adresáři, který chcete monitorovat.

- expandEnvironment – Konfiguruje, jestli se rozbalí proměnné prostředí v cestě.
LocalResource Cesta vzhledem k místnímu prostředku, který se má monitorovat. Požadované atributy jsou:

- Název – místní prostředek, který obsahuje adresář, který se má monitorovat

- relativePath – cesta relativní k názvu, která obsahuje adresář, který se má monitorovat

EtwProviders Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – EtwProviders

Konfiguruje kolekci událostí Trasování událostí pro Windows z poskytovatelů založených na eventSource a/nebo manifestu pro Windows.

Podřízené prvky Popis
EtwEventSourceProviderConfiguration Konfiguruje kolekci událostí vygenerovaných z třídy EventSource. Povinný atribut:

provider – název třídy události EventSource.

Volitelné atributy jsou:

- scheduledTransferLogLevelFilter – minimální úroveň závažnosti pro přenos do účtu úložiště.

- scheduledTransferPeriod – interval mezi plánovanými přenosy do úložiště zaokrouhlený nahoru na nejbližší minutu. Hodnota je datový typ Doby trvání XML.
EtwManifestProviderConfiguration Povinný atribut:

provider – IDENTIFIKÁTOR GUID zprostředkovatele událostí

Volitelné atributy jsou:

- scheduledTransferLogLevelFilter – minimální úroveň závažnosti pro přenos do účtu úložiště.

- scheduledTransferPeriod – interval mezi plánovanými přenosy do úložiště zaokrouhlený nahoru na nejbližší minutu. Hodnota je datový typ Doby trvání XML.

EtwEventSourceProviderConfiguration Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – EtwProviders- EtwEventSourceProviderConfiguration

Konfiguruje kolekci událostí vygenerovaných z třídy EventSource.

Podřízené prvky Popis
DefaultEvents Volitelný atribut:

eventDestination – název tabulky pro uložení událostí v
Událost Povinný atribut:

ID – ID události.

Volitelný atribut:

eventDestination – název tabulky pro uložení událostí v

EtwManifestProviderConfiguration Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – EtwProviders – EtwManifestProviderConfiguration

Podřízené prvky Popis
DefaultEvents Volitelný atribut:

eventDestination – název tabulky pro uložení událostí v
Událost Povinný atribut:

ID – ID události.

Volitelný atribut:

eventDestination – název tabulky pro uložení událostí v

Metrics Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – Metriky

Umožňuje vygenerovat tabulku čítačů výkonu, která je optimalizovaná pro rychlé dotazy. Každý čítač výkonu definovaný v elementu PerformanceCounters je uložen v tabulce Metrics kromě tabulky Čítač výkonu.

Je vyžadován atribut resourceId . ID prostředku virtuálního počítače nebo škálovací sady virtuálních počítačů, do které nasazujete Diagnostiku Azure. Získejte ID prostředku z webu Azure Portal. Vyberte Procházet ->Skupiny prostředků -><Name>. Klikněte na dlaždici Vlastnosti a zkopírujte hodnotu z pole ID . Tato vlastnost RESOURCEID slouží k odesílání vlastních metrik i k přidání vlastnosti resourceID do dat odesílaných do služby Event Hubs. Poznámka: Pokud chcete, aby události nahrané do event Hubs měly ID prostředku, musíte přidat vlastnost resourceId v elementu Metriky .

Podřízené prvky Popis
Agregace metrik Povinný atribut:

scheduledTransferPeriod – interval mezi plánovanými přenosy do úložiště zaokrouhlený nahoru na nejbližší minutu. Hodnota je datový typ Doby trvání XML.

PerformanceCounters Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – PerformanceCounters

Povolí kolekci čítačů výkonu.

Volitelný atribut:

Volitelný atribut scheduledTransferPeriod . Viz vysvětlení dříve.

Podřízený element Popis
PerformanceCounterConfiguration Jsou vyžadovány následující atributy:

- counterSpecifier – název čítače výkonu. Například \Processor(_Total)\% Processor Time. Pokud chcete na hostiteli získat seznam čítačů výkonu, spusťte příkaz typeperf.

- sampleRate – jak často má být čítač vzorkován.

Volitelný atribut:

jednotka – měrná jednotka čítače. Hodnoty jsou k dispozici ve třídě UnitType
potápí Přidáno ve verzi 1.5. Nepovinné. Odkazuje na umístění jímky a odesílá také diagnostická data. Například Azure Monitor nebo Event Hubs. Poznámka: Pokud chcete, aby události nahrané do event Hubs měly ID prostředku, musíte přidat vlastnost resourceId v elementu Metriky .

WindowsEventLog Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – WindowsEventLog

Povolí kolekci protokolů událostí systému Windows.

Volitelný atribut scheduledTransferPeriod . Viz vysvětlení dříve.

Podřízený element Popis
DataSource Protokoly událostí systému Windows, které se mají shromažďovat. Povinný atribut:

name – dotaz XPath popisující události systému Windows, které se mají shromažďovat. Příklad:

Application!*[System[(Level <=3)]], System!*[System[(Level <=3)]], System!*[System[Provider[@Name='Microsoft Antimalware']]], Security!*[System[(Level <= 3)]

Pokud chcete shromáždit všechny události, zadejte "*".
potápí Přidáno ve verzi 1.5. Nepovinné. Odkazuje na umístění jímky a odesílá také diagnostická data pro všechny podřízené prvky, které podporují jímky. Příkladem jímky je Application Insights nebo Event Hubs.

Logs Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – Protokoly

Prezentovat ve verzi 1.0 a 1.1. Chybí ve verzi 1.2. Přidáno zpět ve verzi 1.3.

Definuje konfiguraci vyrovnávací paměti pro základní protokoly Azure.

Atribut Typ Popis
bufferQuotaInMB unsignedInt Nepovinné. Určuje maximální množství úložiště systému souborů, které je k dispozici pro zadaná data.

Výchozí hodnota je 0.
scheduledTransferLogLevelFilter string Nepovinné. Určuje minimální úroveň závažnosti pro položky protokolu, které jsou přeneseny. Výchozí hodnota je Undefined, která přenáší všechny protokoly. Další možné hodnoty (v pořadí od většiny po nejmenší informace) jsou Podrobné, Informace, Upozornění, Chyba a Kritické.
scheduledTransferPeriod trvání Nepovinné. Určuje interval mezi plánovanými přenosy dat zaokrouhlenými nahoru na nejbližší minutu.

Výchozí hodnota je PT0S.
potápí string Přidáno ve verzi 1.5. Nepovinné. Odkazuje na umístění jímky a odesílá také diagnostická data. Například Application Insights nebo Event Hubs. Poznámka: Pokud chcete, aby události nahrané do event Hubs měly ID prostředku, musíte přidat vlastnost resourceId v elementu Metriky .

DockerSources

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – DockerSources

Přidáno ve verzi 1.9.

Název prvku Popis
Statistické údaje Řekne systému, aby shromažďuje statistiky pro kontejnery Dockeru.

SinksConfig Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – SinksConfig

Seznam umístění pro odesílání diagnostických dat a konfiguraci přidruženou k těmto umístěním.

Název prvku Popis
Umyvadlo Zobrazit popis jinde na této stránce

Element jímky

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – SinksConfig – Jímka

Přidáno ve verzi 1.5.

Definuje umístění pro odesílání diagnostických dat. Například služba Application Insights.

Atribut Typ Popis
Jméno string Řetězec identifikující název jímky.
Element (Prvek) Typ Popis
Application Insights string Používá se pouze při odesílání dat do Application Insights. Obsahují instrumentační klíč pro aktivní účet Application Insights, ke kterému máte přístup.
Kanály string Jeden pro každé další filtrování datového proudu, který jste

Kanály – element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – SinksConfig – Jímka – Kanály

Přidáno ve verzi 1.5.

Definuje filtry datových proudů protokolů procházejících jímkou.

Element (Prvek) Typ Popis
Kanál string Zobrazit popis jinde na této stránce

Channel Element

Strom: Root – DiagnosticsConfiguration – PublicConfig – WadCFG – SinksConfig – Jímka – Kanály

Přidáno ve verzi 1.5.

Definuje umístění pro odesílání diagnostických dat. Například služba Application Insights.

Atributy Typ Popis
logLevel string Určuje minimální úroveň závažnosti pro položky protokolu, které jsou přeneseny. Výchozí hodnota je Undefined, která přenáší všechny protokoly. Další možné hodnoty (v pořadí od většiny po nejmenší informace) jsou Podrobné, Informace, Upozornění, Chyba a Kritické.
Jméno string Jedinečný název kanálu, na který se má odkazovat

PrivateConfig Element

Strom: Root – DiagnosticsConfiguration – PrivateConfig

Přidáno ve verzi 1.3.

Volitelné

Ukládá soukromé podrobnosti účtu úložiště (název, klíč a koncový bod). Tyto informace se odesílají do virtuálního počítače, ale nedají se z něj načíst.

Podřízené prvky Popis
StorageAccount Účet úložiště, který se má použít. Jsou vyžadovány následující atributy.

- name – název účtu úložiště.

- klíč – klíč k účtu úložiště.

- koncový bod – koncový bod pro přístup k účtu úložiště.

-sasToken (přidáno 1.8.1) – Token SAS můžete zadat místo klíče účtu úložiště v privátní konfiguraci. Pokud je k dispozici, klíč účtu úložiště se ignoruje.
Požadavky na token SAS:
– Podporuje pouze token SAS účtu.
- b, jsou vyžadovány typy služeb t .
- a, c, u, w oprávnění jsou vyžadována.
- c, o typy prostředků jsou vyžadovány.
- Podporuje pouze protokol HTTPS.
- Čas zahájení a vypršení platnosti musí být platný.

IsEnabled Element

Strom: Root – DiagnosticsConfiguration – IsEnabled

Logický. Slouží true k povolení diagnostiky nebo false zakázání diagnostiky.

Příklad konfigurace

Následuje úplná ukázková konfigurace pro rozšíření diagnostiky Windows zobrazená ve formátu JSON i XML.

JSON

PublicConfig a PrivateConfig jsou oddělené, protože ve většině případů použití JSON se předávají jako různé proměnné. Mezi tyto případy patří šablony Resource Manageru, PowerShell a Visual Studio.

Poznámka:

Definice veřejné konfigurace jímky služby Azure Monitor má dvě vlastnosti, resourceId a oblast. Ty se vyžadují jenom pro klasické virtuální počítače a klasické cloudové služby. Vlastnost oblasti by se neměla používat pro jiné prostředky, vlastnost resourceId se používá na virtuálních počítačích ARM k naplnění pole RESOURCEID v protokolech nahraných do služby Event Hubs.

"PublicConfig" {
    "WadCfg": {
        "DiagnosticMonitorConfiguration": {
            "overallQuotaInMB": 10000,
            "DiagnosticInfrastructureLogs": {
                "scheduledTransferLogLevelFilter": "Error"
            },
            "PerformanceCounters": {
                "scheduledTransferPeriod": "PT1M",
                "sinks": "AzureMonitorSink",
                "PerformanceCounterConfiguration": [
                    {
                        "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
                        "sampleRate": "PT1M",
                        "unit": "percent"
                    }
                ]
            },
            "Directories": {
                "scheduledTransferPeriod": "PT5M",
                "IISLogs": {
                    "containerName": "iislogs"
                },
                "FailedRequestLogs": {
                    "containerName": "iisfailed"
                },
                "DataSources": [
                    {
                        "containerName": "mynewprocess",
                        "Absolute": {
                            "path": "C:\\MyNewProcess",
                            "expandEnvironment": false
                        }
                    },
                    {
                        "containerName": "badapp",
                        "Absolute": {
                            "path": "%SYSTEMDRIVE%\\BadApp",
                            "expandEnvironment": true
                        }
                    },
                    {
                        "containerName": "goodapp",
                        "LocalResource": {
                            "relativePath": "..\\PeanutButter",
                            "name": "Skippy"
                        }
                    }
                ]
            },
            "EtwProviders": {
                "sinks": "",
                "EtwEventSourceProviderConfiguration": [
                    {
                        "scheduledTransferPeriod": "PT5M",
                        "provider": "MyProviderClass",
                        "Event": [
                            {
                                "id": 0
                            },
                            {
                                "id": 1,
                                "eventDestination": "errorTable"
                            }
                        ],
                        "DefaultEvents": {
                        }
                    }
                ],
                "EtwManifestProviderConfiguration": [
                    {
                        "scheduledTransferPeriod": "PT2M",
                        "scheduledTransferLogLevelFilter": "Information",
                        "provider": "5974b00b-84c2-44bc-9e58-3a2451b4e3ad",
                        "Event": [
                            {
                                "id": 0
                            }
                        ],
                        "DefaultEvents": {
                        }
                    }
                ]
            },
            "WindowsEventLog": {
                "scheduledTransferPeriod": "PT5M",
                "DataSource": [
                    {
                        "name": "System!*[System[Provider[@Name='Microsoft Antimalware']]]"
                    },
                    {
                        "name": "System!*[System[Provider[@Name='NTFS'] and (EventID=55)]]"
                    },
                    {
                        "name": "System!*[System[Provider[@Name='disk'] and (EventID=7 or EventID=52 or EventID=55)]]"
                    }
                ]
            },
            "Logs": {
                "scheduledTransferPeriod": "PT1M",
                "scheduledTransferLogLevelFilter": "Verbose",
                "sinks": "ApplicationInsights.AppLogs"
            },
            "CrashDumps": {
                "directoryQuotaPercentage": 30,
                "dumpType": "Mini",
                "containerName": "wad-crashdumps",
                "CrashDumpConfiguration": [
                    {
                        "processName": "mynewprocess.exe"
                    },
                    {
                        "processName": "badapp.exe"
                    }
                ]
            }
        },
        "SinksConfig": {
            "Sink": [
                {
                    "name": "AzureMonitorSink",
                    "AzureMonitor":
                    {
                        "ResourceId": "{insert resourceId if a classic VM or cloud service, else property not needed}",
                        "Region": "{insert Azure region of resource if a classic VM or cloud service, else property not needed}"
                    }
                },
                {
                    "name": "ApplicationInsights",
                    "ApplicationInsights": "{Insert InstrumentationKey}",
                    "Channels": {
                        "Channel": [
                            {
                                "logLevel": "Error",
                                "name": "Errors"
                            },
                            {
                                "logLevel": "Verbose",
                                "name": "AppLogs"
                            }
                        ]
                    }
                },
                {
                    "name": "EventHub",
                    "EventHub": {
                        "Url": "https://myeventhub-ns.servicebus.windows.net/diageventhub",
                        "SharedAccessKeyName": "SendRule",
                        "usePublisherId": false
                    }
                },
                {
                    "name": "secondaryEventHub",
                    "EventHub": {
                        "Url": "https://myeventhub-ns.servicebus.windows.net/secondarydiageventhub",
                        "SharedAccessKeyName": "SendRule",
                        "usePublisherId": false
                    }
                },
                {
                    "name": "secondaryStorageAccount",
                    "StorageAccount": {
                        "name": "secondarydiagstorageaccount",
                        "endpoint": "https://core.windows.net"
                    }
                }
            ]
        }
    },
    "StorageAccount": "diagstorageaccount",
    "StorageType": "TableAndBlob"
}

Poznámka:

Definice jímky služby Azure Monitor privátní konfigurace má dvě vlastnosti: PrincipalId a Secret. Ty se vyžadují jenom pro klasické virtuální počítače a klasické cloudové služby. Tyto vlastnosti by neměly být použity pro jiné prostředky.

"PrivateConfig" {
    "storageAccountName": "diagstorageaccount",
    "storageAccountKey": "{base64 encoded key}",
    "storageAccountEndPoint": "https://core.windows.net",
    "storageAccountSasToken": "{sas token}",
    "EventHub": {
        "Url": "https://myeventhub-ns.servicebus.windows.net/diageventhub",
        "SharedAccessKeyName": "SendRule",
        "SharedAccessKey": "{base64 encoded key}"
    },
    "AzureMonitorAccount": {
        "ServicePrincipalMeta": {
            "PrincipalId": "{Insert service principal client Id}",
            "Secret": "{Insert service principal client secret}"
        }
    },
    "SecondaryStorageAccounts": {
        "StorageAccount": [
            {
                "name": "secondarydiagstorageaccount",
                "key": "{base64 encoded key}",
                "endpoint": "https://core.windows.net",
                "sasToken": "{sas token}"
            }
        ]
    },
    "SecondaryEventHubs": {
        "EventHub": [
            {
                "Url": "https://myeventhub-ns.servicebus.windows.net/secondarydiageventhub",
                "SharedAccessKeyName": "SendRule",
                "SharedAccessKey": "{base64 encoded key}"
            }
        ]
    }
}

XML

<?xml version="1.0" encoding="utf-8"?>  
<DiagnosticsConfiguration  xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration">   
  <PublicConfig>  
    <WadCfg>  
      <DiagnosticMonitorConfiguration overallQuotaInMB="10000">  

        <PerformanceCounters scheduledTransferPeriod="PT1M" sinks="AzureMonitorSink">  
          <PerformanceCounterConfiguration counterSpecifier="\Processor(_Total)\% Processor Time" sampleRate="PT1M" unit="percent" />  
        </PerformanceCounters>  

        <Directories scheduledTransferPeriod="PT5M">  
          <IISLogs containerName="iislogs" />  
          <FailedRequestLogs containerName="iisfailed" />  

          <DataSources>  
            <DirectoryConfiguration containerName="mynewprocess">  
              <Absolute path="C:\MyNewProcess" expandEnvironment="false" />  
            </DirectoryConfiguration>  
            <DirectoryConfiguration containerName="badapp">  
              <Absolute path="%SYSTEMDRIVE%\BadApp" expandEnvironment="true" />  
            </DirectoryConfiguration>  
            <DirectoryConfiguration containerName="goodapp">  
              <LocalResource name="Skippy" relativePath="..\PeanutButter"/>  
            </DirectoryConfiguration>  
          </DataSources>  

        </Directories>  

        <EtwProviders>  
          <EtwEventSourceProviderConfiguration   
                       provider="MyProviderClass"   
                       scheduledTransferPeriod="PT5M">  
            <Event id="0"/>  
            <Event id="1" eventDestination="errorTable"/>  
            <DefaultEvents />  
          </EtwEventSourceProviderConfiguration>  
          <EtwManifestProviderConfiguration provider="5974b00b-84c2-44bc-9e58-3a2451b4e3ad" scheduledTransferLogLevelFilter="Information" scheduledTransferPeriod="PT2M">  
            <Event id="0"/>  
            <DefaultEvents eventDestination="defaultTable"/>  
          </EtwManifestProviderConfiguration>  
        </EtwProviders>  

        <WindowsEventLog scheduledTransferPeriod="PT5M">  
          <DataSource name="System!*[System[Provider[@Name='Microsoft Antimalware']]]"/>  
          <DataSource name="System!*[System[Provider[@Name='NTFS'] and (EventID=55)]]" />  
          <DataSource name="System!*[System[Provider[@Name='disk'] and (EventID=7 or EventID=52 or EventID=55)]]" />  
        </WindowsEventLog>  

        <Logs  bufferQuotaInMB="1024"   
             scheduledTransferPeriod="PT1M"   
             scheduledTransferLogLevelFilter="Verbose"   
             sinks="ApplicationInsights.AppLogs"/>  <!-- sinks attribute added in 1.5 -->  

        <CrashDumps containerName="wad-crashdumps" directoryQuotaPercentage="30" dumpType="Mini">  
          <CrashDumpConfiguration processName="mynewprocess.exe" />  
          <CrashDumpConfiguration processName="badapp.exe"/>  
        </CrashDumps>  

        <DockerSources> <!-- Added in 1.9 -->
          <Stats enabled="true" sampleRate="PT1M" scheduledTransferPeriod="PT1M" />
        </DockerSources>

      </DiagnosticMonitorConfiguration>  

      <SinksConfig>   <!-- Added in 1.5 -->  
        <Sink name="AzureMonitorSink">
            <AzureMonitor> <!-- Added in 1.11 -->
                <resourceId>{insert resourceId}</ResourceId> <!-- Parameter only needed for classic VMs and Classic Cloud Services, exclude VMSS and Resource Manager VMs-->
                <Region>{insert Azure region of resource}</Region> <!-- Parameter only needed for classic VMs and Classic Cloud Services, exclude VMSS and Resource Manager VMs -->
            </AzureMonitor>
        </Sink>
        <Sink name="ApplicationInsights">   
          <ApplicationInsights>{Insert InstrumentationKey}</ApplicationInsights>   
          <Channels>   
            <Channel logLevel="Error" name="Errors"  />   
            <Channel logLevel="Verbose" name="AppLogs"  />   
          </Channels>   
        </Sink>   
        <Sink name="EventHub"> <!-- Added in 1.7 -->
          <EventHub Url="https://myeventhub-ns.servicebus.windows.net/diageventhub" SharedAccessKeyName="SendRule" usePublisherId="false" />
        </Sink>
        <Sink name="secondaryEventHub"> <!-- Added in 1.7 -->
          <EventHub Url="https://myeventhub-ns.servicebus.windows.net/secondarydiageventhub" SharedAccessKeyName="SendRule" usePublisherId="false" />
        </Sink>
        <Sink name="secondaryStorageAccount"> <!-- Added in 1.7 -->
          <StorageAccount name="secondarydiagstorageaccount" endpoint="https://core.windows.net" />
        </Sink>
   </SinksConfig>

  </WadCfg>  

  <StorageAccount>diagstorageaccount</StorageAccount>
  <StorageType>TableAndBlob</StorageType> <!-- Added in 1.8 -->  
  </PublicConfig>  

  <PrivateConfig>  <!-- Added in 1.3 -->  
    <StorageAccount name="" key="" endpoint="" sasToken="{sas token}"  />  <!-- sasToken in Private config added in 1.8.1 -->  
    <EventHub Url="https://myeventhub-ns.servicebus.windows.net/diageventhub" SharedAccessKeyName="SendRule" SharedAccessKey="{base64 encoded key}" />

    <AzureMonitorAccount>
        <ServicePrincipalMeta> <!-- Added in 1.11; only needed for classic VMs and Classic cloud services -->
            <PrincipalId>{Insert service principal clientId}</PrincipalId>
            <Secret>{Insert service principal client secret}</Secret>
        </ServicePrincipalMeta>
    </AzureMonitorAccount>

    <SecondaryStorageAccounts>
       <StorageAccount name="secondarydiagstorageaccount" key="{base64 encoded key}" endpoint="https://core.windows.net" sasToken="{sas token}" />
    </SecondaryStorageAccounts>

    <SecondaryEventHubs>
       <EventHub Url="https://myeventhub-ns.servicebus.windows.net/secondarydiageventhub" SharedAccessKeyName="SendRule" SharedAccessKey="{base64 encoded key}" />
    </SecondaryEventHubs>

  </PrivateConfig>  
  <IsEnabled>true</IsEnabled>  
</DiagnosticsConfiguration>  

Poznámka:

Definice veřejné konfigurace jímky služby Azure Monitor má dvě vlastnosti, resourceId a oblast. Ty se vyžadují jenom pro klasické virtuální počítače a klasické cloudové služby. Tyto vlastnosti by se neměly používat pro virtuální počítače Resource Manager ani škálovací sady virtuálních počítačů. K dispozici je také další privátní konfigurační prvek pro jímku služby Azure Monitor, který předává ID objektu zabezpečení a tajný klíč. To se vyžaduje jenom u klasických virtuálních počítačů a klasických cloudových služeb. U virtuálních počítačů Resource Manageru a VMSS je možné vyloučit definici služby Azure Monitor v elementu privátní konfigurace.