Schema dell'estensione diagnostica Windows
Diagnostica di Azure'estensione è un agente in Monitoraggio di Azure che raccoglie i dati di monitoraggio dal sistema operativo guest e dai carichi di lavoro delle risorse di calcolo di Azure. Questo articolo illustra in dettaglio lo schema usato per la configurazione dell'estensione di diagnostica nelle macchine virtuali Windows e in altre risorse di calcolo.
Nota
Lo schema in questo articolo è valido per le versioni 1.3 e successive (Azure SDK 2.4 e versioni successive). Le sezioni di configurazione più recenti hanno commenti per indicare in quale versione sono state aggiunte. La versione 1.0 e la 1.2 dello schema sono state archiviate e non sono più disponibili.
Schema del file di configurazione pubblico
Scaricare la definizione dello schema del file di configurazione pubblico eseguendo il comando PowerShell seguente:
(Get-AzureServiceAvailableExtension -ExtensionName 'PaaSDiagnostics' -ProviderNamespace 'Microsoft.Azure.Diagnostics').PublicConfigurationSchema | Out-File –Encoding utf8 -FilePath 'C:\temp\WadConfig.xsd'
Tipi di attributi comuni
L'attributo scheduledTransferPeriod è presente in diversi elementi. Si tratta dell'intervallo tra trasferimenti pianificati per l'archivio, arrotondato per eccesso al minuto più vicino. Il valore è un "Tipo di dati di durata" XML.
Elemento DiagnosticsConfiguration
Albero: radice - DiagnosticsConfiguration
Aggiunto nella versione 1.3.
Elemento di livello superiore del file di configurazione della diagnostica.
Attributo xmlns: lo spazio dei nomi XML per il file di configurazione della diagnostica è il seguente:
http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration
Elementi figlio | Descrizione |
---|---|
PublicConfig | Obbligatorio. Vedere la descrizione altrove in questa pagina. |
PrivateConfig | Facoltativo. Vedere la descrizione altrove in questa pagina. |
IsEnabled | Valorebooleano. Vedere la descrizione altrove in questa pagina. |
Elemento PublicConfig
Albero: radice - DiagnosticsConfiguration - PublicConfig
Descrive la configurazione della diagnostica pubblica.
Elementi figlio | Descrizione |
---|---|
WadCfg | Obbligatorio. Vedere la descrizione altrove in questa pagina. |
StorageAccount | Nome dell'account di archiviazione di Azure in cui archiviare i dati. Può anche essere specificato come parametro quando si esegue il cmdlet Set-AzureServiceDiagnosticsExtension. |
Tipo di archiviazione | Può essere Table, Blob o TableAndBlob. Table è il valore predefinito. Quando si sceglie TableAndBlob, i dati di diagnostica vengono scritti due volte, una volta per ogni tipo. |
LocalResourceDirectory | Directory nella macchina virtuale in cui l'agente di monitoraggio archivia i dati degli eventi. Se non impostata, verrà usata la directory predefinita: Per un ruolo di lavoro/Web: C:\Resources\<guid>\directory\<guid>.<RoleName.DiagnosticStore\ Per una macchina virtuale: C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.IaaSDiagnostics\<WADVersion>\WAD<WADVersion> Gli attributi obbligatori sono i seguenti: - path: directory nel sistema che dovrà essere usata da Diagnostica di Azure. - expandEnvironment: definisce se le variabili di ambiente vengono espanse nel nome del percorso. |
Elemento WadCFG
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG
Identifica e configura i dati di telemetria da raccogliere.
Elemento DiagnosticMonitorConfiguration
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration
Richiesto
Attributi | Descrizione |
---|---|
overallQuotaInMB | Spazio massimo sul disco locale che può essere usato dai vari tipi di dati di diagnostica raccolti da Diagnostica di Azure. L'impostazione predefinita è 4096 MB. |
useProxyServer | Configurare Diagnostica di Azure per usare le impostazioni del server proxy impostate nelle impostazioni di Internet Explorer. |
sinks | Aggiunto nella versione 1.5. Facoltativo. Punta a una posizione di sink per inviare anche dati di diagnostica per tutti gli elementi figlio che supportano i sink. Un esempio di sink può essere Application Insights o Hub eventi. Si noti che è necessario aggiungere la proprietà resourceId nell'elemento Metrics se si vuole che gli eventi caricati in Hub eventi abbiano un ID risorsa. |
Elementi figlio | Descrizione |
---|---|
CrashDumps | Vedere la descrizione altrove in questa pagina. |
DiagnosticInfrastructureLogs | Abilita la raccolta dei log generati da Diagnostica di Azure. I log dell'infrastruttura di diagnostica sono utili per la risoluzione dei problemi del sistema di diagnostica stesso. Gli attributi facoltativi sono i seguenti: - scheduledTransferLogLevelFilter: consente di configurare il livello di gravità minimo dei log raccolti. - scheduledTransferPeriod: intervallo tra trasferimenti pianificati per l'archivio, arrotondato per eccesso al minuto più vicino. Il valore è un "Tipo di dati di durata" XML. |
Directories | Vedere la descrizione altrove in questa pagina. |
EtwProviders | Vedere la descrizione altrove in questa pagina. |
Metriche | Vedere la descrizione altrove in questa pagina. |
PerformanceCounters | Vedere la descrizione altrove in questa pagina. |
WindowsEventLog | Vedere la descrizione altrove in questa pagina. |
DockerSources | Vedere la descrizione altrove in questa pagina. |
Elemento CrashDumps
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - CrashDumps
Abilitare la raccolta di dump di arresto anomalo del sistema.
Attributi | Descrizione |
---|---|
containerName | Facoltativo. Nome del contenitore BLOB dell'account di archiviazione di Azure da usare per archiviare i dump di arresto anomalo del sistema. |
crashDumpType | Facoltativo. Configura Diagnostica di Azure per la raccolta di dump di arresto anomalo del sistema completi o mini. |
directoryQuotaPercentage | Facoltativo. Configura la percentuale di overallQuotaInMB da riservare per i dump di arresto anomalo del sistema nella macchina virtuale. |
Elementi figlio | Descrizione |
---|---|
CrashDumpConfiguration | Obbligatorio. Definisce i valori di configurazione di ogni processo. Anche l'attributo seguente è obbligatorio: processName: nome del processo per il quale Diagnostica di Azure dovrà raccogliere un dump di arresto anomalo del sistema. |
Elemento Directories
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - Directories
Abilita la raccolta del contenuto di una directory, dei log delle richieste di accesso IIS non riuscite e/o dei log IIS.
Attributo scheduledTransferPeriod facoltativo. Vedere la spiegazione indicata in precedenza.
Elementi figlio | Descrizione |
---|---|
IISLogs | Includendo questo elemento nella configurazione viene abilitata la raccolta di log IIS: containerName: nome del contenitore BLOB dell'account di archiviazione di Azure da usare per archiviare i log IIS. |
FailedRequestLogs | Con questo elemento nella configurazione è possibile raccogliere i log relativi alle richieste non riuscite per un'applicazione o un sito IIS. È anche necessario abilitare le opzioni di traccia sotto system.WebServer in Web.config. |
DataSources | Elenco di directory da monitorare. |
Elemento DataSources
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - Directories - DataSources
Elenco di directory da monitorare.
Elementi figlio | Descrizione |
---|---|
DirectoryConfiguration | Obbligatorio. Attributo obbligatorio: containerName: nome del contenitore BLOB dell'account di archiviazione di Azure da usare per archiviare i file log. |
Elemento DirectoryConfiguration
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - Directories - DataSources - DirectoryConfiguration
Può includere l'elemento Absolute o LocalResource, ma non entrambi.
Elementi figlio | Descrizione |
---|---|
Absolute | Percorso assoluto della directory da monitorare. Gli attributi seguenti sono obbligatori: - Path: percorso assoluto della directory da monitorare. - expandEnvironment: definisce se le variabili di ambiente vengono espanse in Path. |
LocalResource | Percorso relativo di una risorsa locale da monitorare. Gli attributi obbligatori sono i seguenti: - Name: nome della risorsa locale che contiene la directory da monitorare - relativePath: percorso relativo del nome che contiene la directory da monitorare |
Elemento EtwProviders
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - EtwProviders
Configura la raccolta di eventi ETW da EventSource e/o da provider basati su manifesti ETW.
Elementi figlio | Descrizione |
---|---|
EtwEventSourceProviderConfiguration | Configura la raccolta di eventi generati dalla classe EventSource. Attributo obbligatorio: provider: nome della classe dell'evento EventSource. Gli attributi facoltativi sono i seguenti: - scheduledTransferLogLevelFilter: livello di gravità minimo per il trasferimento nell'account di archiviazione. - scheduledTransferPeriod: intervallo tra trasferimenti pianificati per l'archivio, arrotondato per eccesso al minuto più vicino. Il valore è un "Tipo di dati di durata" XML. |
EtwManifestProviderConfiguration | Attributo obbligatorio: provider: GUID del provider di eventi Gli attributi facoltativi sono i seguenti: - scheduledTransferLogLevelFilter: livello di gravità minimo per il trasferimento nell'account di archiviazione. - scheduledTransferPeriod: intervallo tra trasferimenti pianificati per l'archivio, arrotondato per eccesso al minuto più vicino. Il valore è un "Tipo di dati di durata" XML. |
Elemento EtwEventSourceProviderConfiguration
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - EtwProviders- EtwEventSourceProviderConfiguration
Configura la raccolta di eventi generati dalla classe EventSource.
Elementi figlio | Descrizione |
---|---|
DefaultEvents | Attributo facoltativo: eventDestination: nome della tabella nella quale archiviare gli eventi |
Evento | Attributo obbligatorio: id: ID dell'evento. Attributo facoltativo: eventDestination: nome della tabella nella quale archiviare gli eventi |
Elemento EtwManifestProviderConfiguration
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - EtwProviders - EtwManifestProviderConfiguration
Elementi figlio | Descrizione |
---|---|
DefaultEvents | Attributo facoltativo: eventDestination: nome della tabella nella quale archiviare gli eventi |
Evento | Attributo obbligatorio: id: ID dell'evento. Attributo facoltativo: eventDestination: nome della tabella nella quale archiviare gli eventi |
Elemento Metrics
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - Metrics
Consente di generare una tabella di contatori delle prestazioni ottimizzata per le query veloci. Ogni contatore delle prestazioni definito nell'elemento PerformanceCounters viene archiviato nella tabella delle metriche oltre che nella tabella dei contatori delle prestazioni.
L'attributo resourceId è obbligatorio. L'ID risorsa della macchina virtuale o del set di scalabilità di macchine virtuali in cui si distribuisce Diagnostica di Azure. Ottenere l'attributo resourceID dal portale di Azure. Selezionare Sfoglia ->Gruppi di risorse -<>Nome.> Fare clic sul riquadro Proprietà e copiare il valore del campo ID. Questa proprietà resourceID viene usata sia per l'invio di metriche personalizzate che per l'aggiunta di una proprietà resourceID ai dati inviati a Hub eventi. Si noti che è necessario aggiungere la proprietà resourceId nell'elemento Metrics se si vuole che gli eventi caricati in Hub eventi abbiano un ID risorsa.
Elementi figlio | Descrizione |
---|---|
MetricAggregation | Attributo obbligatorio: scheduledTransferPeriod: intervallo tra trasferimenti pianificati per l'archivio, arrotondato per eccesso al minuto più vicino. Il valore è un "Tipo di dati di durata" XML. |
Elemento PerformanceCounters
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - PerformanceCounters
Abilita la raccolta dei contatori delle prestazioni.
Attributo facoltativo:
Attributo scheduledTransferPeriod facoltativo. Vedere la spiegazione indicata in precedenza.
Elemento figlio | Descrizione |
---|---|
PerformanceCounterConfiguration | Gli attributi seguenti sono obbligatori: - counterSpecifier: nome del contatore delle prestazioni. Ad esempio: \Processor(_Total)\% Processor Time . Per ottenere un elenco di contatori delle prestazioni nell'host eseguire il comando typeperf .- sampleRate: frequenza di campionamento del contatore. Attributo facoltativo: unit: unità di misura del contatore. I valori sono disponibili in UnitType Class |
sinks | Aggiunto nella versione 1.5. Facoltativo. Punta a una posizione di sink per l'invio di dati di diagnostica, Ad esempio, Monitoraggio di Azure o Hub eventi. Si noti che è necessario aggiungere la proprietà resourceId nell'elemento Metrics se si vuole che gli eventi caricati in Hub eventi abbiano un ID risorsa. |
Elemento WindowsEventLog
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - WindowsEventLog
Abilita la raccolta dei log eventi di Windows.
Attributo scheduledTransferPeriod facoltativo. Vedere la spiegazione indicata in precedenza.
Elemento figlio | Descrizione |
---|---|
Origine dati | Log eventi di Windows da raccogliere. Attributo obbligatorio: name : query XPath che descrive gli eventi di Windows da raccogliere. Ad esempio: Application!*[System[(Level <=3)]], System!*[System[(Level <=3)]], System!*[System[Provider[@Name='Microsoft Antimalware']]], Security!*[System[(Level <= 3)] Per raccogliere tutti gli eventi, specificare "*" |
sinks | Aggiunto nella versione 1.5. Facoltativo. Punta a una posizione di sink per inviare anche dati di diagnostica per tutti gli elementi figlio che supportano i sink. Un esempio di sink può essere Application Insights o Hub eventi. |
Elemento Logs
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - Logs
Presente nella versione 1.0 e 1.1. Assente nella versione 1.2. Aggiunto nuovamente nella versione 1.3.
Definisce la configurazione del buffer per i log di base di Azure.
Attributo | Tipo | Descrizione |
---|---|---|
bufferQuotaInMB | unsignedInt | Facoltativo. Specifica lo spazio massimo di archiviazione del file system disponibile per i dati specificati. Il valore predefinito è 0. |
scheduledTransferLogLevelFilter | string | Facoltativo. Specifica il livello di gravità minimo per le voci di log trasferite. Il valore predefinito è Non definito, con il quale verranno trasferiti tutti i log. Altri valori possibili (dal più dettagliato al meno dettagliato) sono Dettagli, Informazioni, Avviso, Errore e Critico. |
scheduledTransferPeriod | duration | Facoltativo. Specifica l'intervallo tra trasferimenti di dati pianificati, arrotondato per eccesso al minuto più vicino. Il valore predefinito è PT0S. |
sinks | string | Aggiunto nella versione 1.5. Facoltativo. Punta a una posizione di sink per l'invio di dati di diagnostica, ad esempio Application Insights o Hub eventi. Si noti che è necessario aggiungere la proprietà resourceId nell'elemento Metrics se si vuole che gli eventi caricati in Hub eventi abbiano un ID risorsa. |
DockerSources
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - DiagnosticMonitorConfiguration - DockerSources
Elementi aggiunti nella versione 1.9.
Nome elemento | Descrizione |
---|---|
Stats | Indica al sistema di raccogliere statistiche per i contenitori Docker |
Elemento SinksConfig
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - SinksConfig
Elenco di posizioni a cui inviare i dati di diagnostica e la configurazione associata a tali posizioni.
Nome elemento | Descrizione |
---|---|
Sink | Vedere la descrizione altrove in questa pagina. |
Elemento Sink
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - SinksConfig - Sink
Aggiunto nella versione 1.5.
Definisce le posizioni a cui inviare i dati di diagnostica, ad esempio il servizio Application Insights.
Attributo | Tipo | Descrizione |
---|---|---|
name | string | Stringa che identifica il nome del sink. |
Elemento | Tipo | Descrizione |
---|---|---|
Application Insights | string | Usato solo per inviare dati ad Application Insights. Contiene la chiave di strumentazione per un account di Application Insights attivo a cui è possibile accedere. |
Canali | string | Uno per ogni filtro aggiuntivo per i flussi |
Elemento Channels
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - SinksConfig - Sink - Channels
Aggiunto nella versione 1.5.
Definisce i filtri per i flussi di dati di log che attraversano un sink.
Elemento | Tipo | Descrizione |
---|---|---|
Canale | string | Vedere la descrizione altrove in questa pagina. |
Elemento Channel
Albero: radice - DiagnosticsConfiguration - PublicConfig - WadCFG - SinksConfig - Sink - Channels - Channel
Aggiunto nella versione 1.5.
Definisce le posizioni a cui inviare i dati di diagnostica, ad esempio il servizio Application Insights.
Attributi | Tipo | Descrizione |
---|---|---|
logLevel | string | Specifica il livello di gravità minimo per le voci di log trasferite. Il valore predefinito è Non definito, con il quale verranno trasferiti tutti i log. Altri valori possibili (dal più dettagliato al meno dettagliato) sono Dettagli, Informazioni, Avviso, Errore e Critico. |
name | string | Nome univoco per fare riferimento al canale |
Elemento PrivateConfig
Albero: radice - DiagnosticsConfiguration - PrivateConfig
Aggiunto nella versione 1.3.
Facoltativo
Archivia le informazioni private dell'account di archiviazione, ovvero nome, chiave ed endpoint. Queste informazioni vengono inviate alla macchina virtuale, ma non possono essere recuperate dalla macchina virtuale stessa.
Elementi figlio | Descrizione |
---|---|
StorageAccount | Account di archiviazione da usare. Gli attributi seguenti sono obbligatori: - name: nome dell'account di archiviazione. - key: chiave dell'account di archiviazione. - endpoint: endpoint per accedere all'account di archiviazione. -sasToken (aggiunta 1.8.1): è possibile specificare un token di firma di accesso condiviso anziché una chiave dell'account di archiviazione nella configurazione privata. Se specificato, la chiave dell'account di archiviazione viene ignorata. Requisiti per il token di firma di accesso condiviso: - Supporta solo il token di firma di accesso condiviso dell'account Sono obbligatori i tipi di servizio - b e t. Sono obbligatorie le autorizzazioni - a, c, u, w. Sono obbligatori i tipi di risorse - c, o. - Supporta solo il protocollo HTTPS -I valori dell'ora di inizio e di scadenza devono essere validi. |
Elemento IsEnabled
Albero: radice - DiagnosticsConfiguration - IsEnabled
Valorebooleano. Usare true
per abilitare la diagnostica o false
per disabilitarla.
Configurazione di esempio
Di seguito è riportata una configurazione di esempio completa per l'estensione diagnostica windows illustrata sia in JSON che in XML.
JSON
PublicConfig e PrivateConfig sono separati perché nella maggior parte dei casi di utilizzo JSON vengono passati come variabili diverse. Questi casi includono modelli di Resource Manager, PowerShell e Visual Studio.
Nota
La definizione del sink di Monitoraggio di Azure di configurazione pubblica ha due proprietà, resourceId e area. Questi sono necessari solo per le macchine virtuali classiche e i servizio cloud classici. La proprietà region non deve essere usata per altre risorse, la proprietà resourceId viene usata nelle macchine virtuali ARM per popolare il campo resourceID nei log caricati in Hub eventi.
"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"
}
Nota
La definizione del sink di Monitoraggio di Azure di configurazione privata ha due proprietà, PrincipalId e Secret. Questi sono necessari solo per le macchine virtuali classiche e i servizio cloud classici. Queste proprietà non devono essere usate per altre risorse.
"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>
Nota
La definizione del sink di Monitoraggio di Azure della configurazione pubblica dispone di due proprietà, resourceId e area. Questi sono necessari solo per le macchine virtuali classiche e i servizio cloud classici. Queste proprietà non devono essere usate per le macchine virtuali di Resource Manager o i set di scalabilità di macchine virtuali. È inoltre disponibile un altro elemento di configurazione privata per il sink di Monitoraggio di Azure, che viene passato in un ID entità di sicurezza e segreto. Questo è necessario solo per le macchine virtuali classiche e i servizi cloud classici. Per le macchine virtuali di Resource Manager e VMSS la definizione di Monitoraggio di Azure nell'elemento di configurazione privato può essere escluso.