Schéma rozšíření diagnostiky Windows

Azure Diagnostics rozšíření 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é ke 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 jsou okomentovány, aby se zobrazilo, v jaké verzi byly přidány. Verze 1.0 a 1.2 schématu byly archivovány a už nejsou k dispozici.

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

Stáhněte si 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ů

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

DiagnosticsConfiguration Element

Strom: Kořen – DiagnostikaKonfigurace

Přidáno ve verzi 1.3.

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

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

Podřízené elementy Popis
PublicConfig Povinná hodnota. Popis najdete jinde na této stránce.
PrivateConfig Nepovinný parametr. Popis najdete jinde na této stránce.
IsEnabled Boolean. Popis najdete jinde na této stránce.

PublicConfig Element

Strom: Kořen – DiagnostikaKonfigurace – PublicConfig

Popisuje konfiguraci veřejné diagnostiky.

Podřízené elementy Popis
WadCfg Povinná hodnota. Popis najdete jinde na této stránce.
StorageAccount Název účtu Služby Azure Storage, do který se mají data ukládat. Může být také zadán jako parametr při provádění rutiny Set-AzureServiceDiagnosticsExtension.
Typ úložiště Může to být Tabulka, Objekt blob nebo TableAndBlob. Tabulka je výchozí. Pokud je vybraná možnost TableAndBlob, zapisují se diagnostická data dvakrát – jednou do každého typu.
LocalResourceDirectory Adresář na virtuálním počítači, kam agent monitorování ukládá data událostí. Pokud ne, nastavte, použije se výchozí adresář:

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

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á používat Azure Diagnostics.

- 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

Vyžadováno

Atributy Popis
overallQuotaInMB Maximální množství místa na místním disku, které může být spotřebováno různými typy diagnostických dat shromažďovaných Azure Diagnostics. Výchozí nastavení je 4096 MB.
useProxyServer Nakonfigurujte Azure Diagnostics tak, aby používal nastavení proxy serveru, jak je nastavené v nastavení IE.
Propadů Přidáno ve 1.5. Nepovinný parametr. Odkazuje na umístění jímky, aby se také odesílala diagnostická data pro všechny podřízené prvky, které podporují jímky. Příkladem jímky je Application Insights nebo Event Hubs. Pokud chcete, aby události nahrané do služby Event Hubs měly ID prostředku, musíte do elementu Metrics přidat vlastnost resourceId.



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

- scheduledTransferLogLevelFilter – konfiguruje 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 XML "Doba trvání datového typu".
Adresáře Popis najdete jinde na této stránce.
EtwProviders Popis najdete jinde na této stránce.
Metriky Popis najdete jinde na této stránce.
PerformanceCounters Popis najdete jinde na této stránce.
WindowsEventLog Popis najdete jinde na této stránce.
DockerSources Popis najdete jinde na této stránce.

CrashDumps Element

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

Povolte kolekci výpisů stavu systému.

Atributy Popis
název_kontejneru Nepovinný parametr. Název kontejneru objektů blob ve vašem účtu služby Azure Storage, který se má použít k ukládání výpisů stavu systému.
typ crashDumpType Nepovinný parametr. Konfiguruje Azure Diagnostics pro shromažďování minimálních nebo úplných výpisů stavu systému.
directoryQuotaPercentage Nepovinný parametr. Nakonfiguruje procento celkovéhoQuotaInMB , které bude vyhrazeno pro výpisy stavu systému na virtuálním počítači.
Podřízené elementy Popis
CrashDumpConfiguration Povinná hodnota. Definuje hodnoty konfigurace pro každý proces.

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

processName – název procesu, pro který chcete Azure Diagnostics shromáždit výpis stavu systému.

Adresář – element

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

Umožňuje shromažďování obsahu adresáře, protokolů neúspěšných žádostí o přístup služby IIS a/nebo protokolů služby IIS.

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

Podřízené elementy Popis
Protokoly služby IIS Zahrnutí tohoto prvku do konfigurace umožňuje shromažďování protokolů služby IIS:

containerName – název kontejneru objektů blob ve vašem úč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 služby IIS. Musíte také povolit možnosti trasování v systému. Webový server v Web.config.
Datasources Seznam adresářů, které se mají monitorovat.

DataSources Element

Strom: Root - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - Adresáře - DataSources

Seznam adresářů, které se mají monitorovat.

Podřízené elementy Popis
Konfigurace adresáře Povinná hodnota. Požadovaný atribut:

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

DirectoryConfiguration Element

Strom: Root - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - Adresáře - DataSources - DirectoryConfiguration

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

Podřízené elementy Popis
Absolutní Absolutní cesta k adresáři, který chcete monitorovat. Vyžadují se následující atributy:

- Path – absolutní cesta k adresáři, který se má monitorovat.

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

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

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

EtwProviders Element

Strom: Kořen – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – EtwProviders

Konfiguruje shromažďování událostí trasování událostí pro Windows od zprostředkovatelů eventSource nebo manifestu Trasování událostí pro Windows.

Podřízené elementy Popis
EtwEventSourceProviderConfiguration Konfiguruje shromažďování událostí vygenerovaných z třídy EventSource. Požadovaný atribut:

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

Volitelné atributy jsou:

- scheduledTransferLogLevelFilter – minimální úroveň závažnosti, která se má přenést do účtu úložiště.

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

provider – identifikátor GUID zprostředkovatele událostí

Volitelné atributy jsou:

- scheduledTransferLogLevelFilter – minimální úroveň závažnosti, která se má přenést do účtu úložiště.

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

EtwEventSourceProviderConfiguration Element

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

Konfiguruje shromažďování událostí vygenerovaných z třídy EventSource.

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

eventDestination – název tabulky, do které se mají události uložit.
Událost Požadovaný atribut:

id – ID události.

Volitelný atribut:

eventDestination – název tabulky, do které se mají události uložit.

EtwManifestProviderConfiguration Element

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

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

eventDestination – název tabulky, do které se mají události uložit.
Událost Požadovaný atribut:

id – ID události.

Volitelný atribut:

eventDestination – název tabulky, do které se mají události uložit.

Metrics Element

Strom: Kořen – 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 kromě tabulky Čítač výkonu uložen v tabulce Metrics.

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

Podřízené elementy Popis
MetricAggregation (Agregace metrik) Požadovaný atribut:

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

PerformanceCounters Element

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

Umožňuje shromažďování čítačů výkonu.

Volitelný atribut:

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

Podřízený element Popis
PerformanceCounterConfiguration Vyžadují se následující atributy:

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

- sampleRate – jak často se má čítač vzorkovat.

Volitelný atribut:

unit – měrná jednotka čítače. Hodnoty jsou k dispozici ve třídě UnitType.
Propadů Přidáno ve 1.5. Nepovinný parametr. Odkazuje na umístění jímky, aby se odesílala také diagnostická data. Například Azure Monitor nebo Event Hubs. Poznámka: Pokud chcete, aby události nahrané do služby Event Hubs měly ID prostředku, musíte v elementu Metrics přidat vlastnost resourceId.

WindowsEventLog Element

Strom: Kořen – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – WindowsEventLog

Povolí shromažďování 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í shromáždit. Požadovaný atribut:

name – dotaz XPath popisující události Systému Windows, které se mají shromáždit. 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 *.
Propadů Přidáno ve 1.5. Nepovinný parametr. Odkazuje na umístění jímky a odesílá 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: Kořen – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – Protokoly

K dispozici ve verzích 1.0 a 1.1. Chybí ve verzi 1.2. Přidáno zpět ve 1.3.

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

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

Výchozí hodnota je 0.
scheduledTransferLogLevelFilter řetězec Nepovinný parametr. Určuje minimální úroveň závažnosti přenášených položek protokolu. Výchozí hodnota je Nedefinováno, což přenese 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 Doba trvání Nepovinný parametr. Určuje interval mezi plánovanými přenosy dat zaokrouhleným nahoru na nejbližší minutu.

Výchozí hodnota je PT0S.
Propadů řetězec Přidáno ve 1.5. Nepovinný parametr. Odkazuje na umístění jímky, aby se odesílala také diagnostická data. Například Application Insights nebo Event Hubs. Poznámka: Pokud chcete, aby události nahrané do služby Event Hubs měly ID prostředku, musíte v elementu Metrics přidat vlastnost resourceId.

DockerSources

Strom: Kořen – DiagnosticsConfiguration – PublicConfig – WadCFG – DiagnosticMonitorConfiguration – DockerSources

Přidáno ve 1.9.

Název prvku Popis
Statistiky Říká systému, aby shromažďuje statistiky pro kontejnery Dockeru.

SinksConfig Element

Strom: Kořen – DiagnosticsConfiguration – PublicConfig – WadCFG – JímkyConfig

Seznam umístění, do kterých se mají odesílat diagnostická data, a konfigurace přidružená k těmto umístěním.

Název prvku Popis
Jímka Popis najdete jinde na této stránce.

Prvek jímky

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

Přidáno ve verzi 1.5.

Definuje umístění, do kterých se mají odesílat diagnostická data. Například služba Application Insights.

Atribut Typ Popis
Jméno řetězec Řetězec identifikující název jímky.
Prvek Typ Popis
Application Insights řetězec Používá se jenom 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 řetězec Jeden pro každé další filtrování, které streamujete

Channel – element

Strom: Root - DiagnosticsConfiguration - PublicConfig - WadCFG - JímkyConfig - Jímka - Kanály

Přidáno ve verzi 1.5.

Definuje filtry pro streamy dat protokolu procházejících jímkou.

Prvek Typ Popis
Kanál řetězec Popis najdete jinde na této stránce.

Element kanálu

Strom: Root - DiagnosticsConfiguration - PublicConfig - WadCFG - SinksConfig - SinksConfig - Sinks - Sinks - Channels - Channel

Přidáno ve verzi 1.5.

Definuje umístění, do kterých se mají odesílat diagnostická data. Například služba Application Insights.

Atributy Typ Popis
Loglevel řetězec Určuje minimální úroveň závažnosti pro položky protokolu, které se přenesou. Výchozí hodnota je Nedefinováno, což 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 řetězec 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á privátní podrobnosti účtu úložiště (název, klíč a koncový bod). Tyto informace se odesílají do virtuálního počítače, ale nelze je z něj načíst.

Podřízené elementy 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ě.

- key – 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) – V privátní konfiguraci můžete místo klíče účtu úložiště zadat token SAS. Pokud je k dispozici, klíč účtu úložiště se ignoruje.
Požadavky na token SAS:
– Podporuje pouze token SAS účtu.
- b, t jsou vyžadovány typy služeb.
- a, c, u, w jsou vyžadována oprávnění.
- c, o typy prostředků jsou povinné.
– Podporuje pouze protokol HTTPS.
- Čas zahájení a vypršení platnosti musí být platný.

IsEnabled Element

Strom: Kořen – DiagnosticsConfiguration – IsEnabled

Boolean. Použijte true k povolení diagnostiky nebo false k zakázání diagnostiky.

Příklad konfigurace

Následuje kompletní ukázková konfigurace 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 Manager, PowerShell a Visual Studio.

Poznámka

Definice jímky služby Azure Monitor veřejné konfigurace má dvě vlastnosti : resourceId a region. Vyžadují se jenom pro virtuální počítače Classic a cloudové služby Classic. Vlastnost region 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. Vyžadují se jenom pro virtuální počítače Classic a cloudové služby Classic. Tyto vlastnosti by se neměly používat 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 jímky služby Azure Monitor veřejné konfigurace má dvě vlastnosti: resourceId a region. Vyžadují se jenom pro virtuální počítače Classic a cloudové služby Classic. Tyto vlastnosti by se neměly používat pro Resource Manager Virtual Machines nebo škálovací sady virtuálních počítačů. K dispozici je také další prvek privátní konfigurace pro jímku služby Azure Monitor, který předává ID objektu zabezpečení a tajný klíč. To se vyžaduje jenom u virtuálních počítačů Classic a Cloud Services Classic. U Resource Manager virtuálních počítačů a škálovací sady virtuálních počítačů je možné vyloučit definici Služby Azure Monitor v elementu private config.