Integrare Automazione di Azure State Configuration con i log di Monitoraggio di Azure
Nota
Prima di abilitare Automation State Configuration, si vuole sapere che una versione più recente di DSC è ora disponibile a livello generale, gestita da una funzionalità di Criteri di Azure configurazione guest denominata. Il servizio di configurazione guest combina le funzionalità dell'estensione DSC, Automazione di Azure State Configuration e le funzionalità più comunemente richieste dai clienti. La configurazione guest include anche il supporto del computer ibrido tramite server abilitati per Arc.
State Configuration di Automazione di Azure mantiene i dati sullo stato dei nodi per 30 giorni. È possibile inviare dati sullo stato del nodo ai log di Monitoraggio di Azure se si preferisce conservare questi dati per un periodo più lungo. Lo stato della conformità è visibile nel portale di Azure o tramite PowerShell per i nodi e per le singole risorse DSC nelle configurazioni dei nodi.
I log di Monitoraggio di Azure offrono una maggiore visibilità operativa ai dati di State Configuration di Automazione e consentono di risolvere gli eventi imprevisti più rapidamente. Con i log di Monitoraggio di Azure è possibile:
- Ottenere informazioni sulla conformità per nodi gestiti e singole risorse.
- Attivare un messaggio di posta elettronica o un avviso in base allo stato di conformità.
- Scrivere query avanzate in tutti i nodi gestiti.
- Correlare lo stato di conformità negli account di Automazione.
- Usare visualizzazioni personalizzate e query di ricerca per visualizzare i risultati del runbook, lo stato dei processi del runbook e altri indicatori chiave o metriche correlati.
Nota
Questo articolo è stato aggiornato di recente in modo da usare il termine log di Monitoraggio di Azure anziché Log Analytics. I dati di log vengono comunque archiviati in un'area di lavoro Log Analytics e vengano ancora raccolti e analizzati dallo stesso servizio Log Analytics. Si sta procedendo a un aggiornamento della terminologia per riflettere meglio il ruolo dei log in Monitoraggio di Azure. Per informazioni dettagliate, vedere Modifiche della terminologia di Monitoraggio di Azure.
Prerequisiti
Per iniziare a inviare i report di Automation State Configuration ai log di Monitoraggio di Azure, è necessario:
- Il modulo Az di PowerShell installato. Verificare di avere l'ultima versione. Se necessario, eseguire
Update-Module -Name Az
.
- Un account di automazione di Azure. Per altre informazioni, vedere Introduzione ad Automazione di Azure.
- Un'area di lavoro Log Analytics. Per altre informazioni, vedere Panoramica dei log di Monitoraggio di Azure.
- Almeno un nodo di configurazione dello stato di Automazione di Azure. Per altre informazioni, vedere Onboarding di computer per la gestione tramite State Configuration di Automazione di Azure.
- Il modulo xDscDiagnostics, versione 2.7.0.0 o successive. Per la procedura di installazione, vedere Risolvere i problemi relativi a Desired State Configuration di Automazione di Azure.
Configurare l'integrazione con i log di Monitoraggio di Azure
Per iniziare a importare dati da Automazione di Azure State Configuration nei log di Monitoraggio di Azure, seguire questa procedura. Per i passaggi che usano il portale, vedere Inoltrare Automazione di Azure dati del processo ai log di Monitoraggio di Azure.
Dal computer accedere alla sottoscrizione di Azure con il cmdlet PowerShell Connessione-AzAccount e seguire le istruzioni visualizzate.
# Sign in to your Azure subscription $sub = Get-AzSubscription -ErrorAction SilentlyContinue if(-not($sub)) { Connect-AzAccount } # If you have multiple subscriptions, set the one to use # Select-AzSubscription -SubscriptionId "<SUBSCRIPTIONID>"
Specificare un valore appropriato per le variabili
automationAccount
con il nome effettivo dell'account di Automazione eworkspaceName
con il nome effettivo dell'area di lavoro Log Analytics. A questo punto, eseguire lo script.$automationAccount = "automationAccount" $law = "workspaceName"
Ottenere l'ID risorsa dell'account di Automazione eseguendo i comandi di PowerShell seguenti.
# Find the ResourceId for the Automation account $AutomationResourceId = (Get-AzResource ` -ResourceType 'Microsoft.Automation/automationAccounts' | WHERE {$_.Name -eq $automationAccount}).ResourceId
Ottenere l'ID risorsa dell'area di lavoro Log Analytics eseguendo i comandi di PowerShell seguenti.
# Find the ResourceId for the Log Analytics workspace $WorkspaceResourceId = (Get-AzResource ` -ResourceType 'Microsoft.OperationalInsights/workspaces' | WHERE {$_.Name -eq $law}).ResourceId
Per configurare le impostazioni di diagnostica nell'account di Automazione per inoltrare i dati del log dello stato del nodo DSC ai log di Monitoraggio di Azure, il cmdlet di PowerShell seguente crea un'impostazione di diagnostica usando tale destinazione.
Set-AzDiagnosticSetting ` -ResourceId $AutomationResourceId ` -WorkspaceId $WorkspaceResourceId ` -Enabled $true ` -Category 'DscNodeStatus'
Quando si vuole interrompere l'inoltro dei dati di log da Automation State Configuration ai log di Monitoraggio di Azure, eseguire il cmdlet di PowerShell seguente.
Set-AzDiagnosticSetting ` -ResourceId $AutomationResourceId ` -WorkspaceId $WorkspaceResourceId ` -Enabled $false ` -Category 'DscNodeStatus'
Visualizzare i log di configurazione dello stato
È possibile eseguire ricerche nei log di State Configuration per le operazioni DSC eseguendo una ricerca nei log di Monitoraggio di Azure. Dopo aver configurato l'integrazione con i log di Monitoraggio di Azure per i dati di Automation State Configuration, passare all'account di Automazione nel portale di Azure. In Monitoraggio selezionare Quindi Log.
Chiudere la finestra di dialogo Query . Il riquadro Ricerca log viene aperto con un'area di query con ambito definito in base alla risorsa dell'account di Automazione. I record relativi alle operazioni DSC sono archiviati nella tabella AzureDiagnostics
. Per trovare nodi non conformi, digitare la query seguente.
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName contains "DSCNodeStatusData"
| where ResultType != "Compliant"
Dettagli di filtro:
- Filtrare in base a
DscNodeStatusData
per restituire le operazioni per ogni nodo di State Configuration. - Filtrare in base a
DscResourceStatusData
per restituire le operazioni per ogni risorsa DSC chiamata nella configurazione del nodo applicata a tale risorsa. - Filtrare in base a
DscResourceStatusData
per restituire le informazioni sugli errori per tutte le risorse DSC che hanno esito negativo.
Per altre informazioni sulla creazione di query di log per trovare dati, vedere Panoramica delle query di log in Monitoraggio di Azure.
Inviare un messaggio di posta elettronica in caso di errore di un controllo della conformità alla configurazione dello stato
Tornare alla query creata in precedenza.
Premere il pulsante "+ Nuova regola di avviso" per avviare il flusso di creazione dell'avviso.
Nella query seguente sostituire
NODENAME
con il nome effettivo del nodo gestito e quindi incollare la query modificata nella casella di testo Cerca query :AzureDiagnostics | where Category == "DscNodeStatus" | where NodeName_s == "NODENAME" | where OperationName == "DscNodeStatusData" | where ResultType == "Failed"
Se sono stati configurati log da più account di Automazione o sottoscrizioni nell'area di lavoro, è possibile raggruppare gli avvisi per sottoscrizione o account di Automazione. Derivare il nome dell'account
Resource
di Automazione dalla proprietà nei risultati della ricerca log diDscNodeStatusData
.Esaminare Creare, visualizzare e gestire gli avvisi delle metriche usando Monitoraggio di Azure per completare i passaggi rimanenti.
Trovare le risorse DSC con errori in tutti i nodi
Uno dei vantaggi dell'uso dei log di Monitoraggio di Azure è la possibilità di cercare controlli non riusciti tra i nodi. Per trovare tutte le istanze di risorse DSC non riuscite, usare la query seguente:
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName == "DscResourceStatusData"
| where ResultType == "Failed"
Visualizzare lo stato cronologico dei nodi DSC
Per visualizzare la cronologia dello stato dei nodi DSC nel tempo, è possibile usare questa query:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION"
| where Category == "DscNodeStatus"
| where ResultType != "started"
| summarize count() by ResultType
Verrà visualizzato un grafico dello stato dei nodi nel tempo.
Record dei log di Monitoraggio di Azure
Automazione di Azure diagnostica creare due categorie di record nei log di Monitoraggio di Azure:
- Dati sullo stato del nodo (
DscNodeStatusData
) - Dati sullo stato della risorsa (
DscResourceStatusData
)
DscNodeStatusData
Proprietà | Descrizione |
---|---|
TimeGenerated | Data e ora dell'esecuzione del controllo della conformità. |
OperationName | DscNodeStatusData . |
ResultType | Valore che indica se il nodo è conforme. |
NodeName_s | Nome del nodo gestito. |
NodeComplianceStatus_s | Valore dello stato che specifica se il nodo è conforme. |
DscReportStatus | Valore dello stato che indica se il controllo di conformità è stato eseguito correttamente. |
ConfigurationMode | Modalità usata per applicare la configurazione al nodo. I valori possibili sono:
|
HostName_s | Nome del nodo gestito. |
IPAddress | Indirizzo IPv4 del nodo gestito. |
Categoria | DscNodeStatus . |
Risorsa | Nome dell'account di Automazione di Azure. |
Tenant_g | GUID che identifica il tenant del chiamante. |
NodeId_g | GUID che identifica il nodo gestito. |
DscReportId_g | GUID che identifica il report. |
LastSeenTime_t | Data e ora dell'ultima visualizzazione del report. |
ReportStartTime_t | Data e ora dell'avvio del report. |
ReportEndTime_t | Data e ora del completamento del report. |
NumberOfResources_d | Numero di risorse DSC chiamate nella configurazione applicata al nodo. |
SourceSystem | Il sistema di origine che identifica il modo in cui i log di Monitoraggio di Azure hanno raccolto i dati. Il valore è sempre Azure per diagnostica di Azure. |
ResourceId | Identificatore di risorsa dell'account di Automazione di Azure. |
ResultDescription | Descrizione della risorsa per questa operazione. |
SubscriptionId | ID della sottoscrizione di Azure (GUID) per l'account di Automazione. |
ResourceGroup | Nome del gruppo di risorse per l'account di Automazione. |
ResourceProvider | MICROSOFT.AUTOMATION. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | GUID che rappresenta l'identificatore di correlazione del report di conformità. |
DscResourceStatusData
Proprietà | Descrizione |
---|---|
TimeGenerated | Data e ora dell'esecuzione del controllo della conformità. |
OperationName | DscResourceStatusData . |
ResultType | Indica se la risorsa è conforme. |
NodeName_s | Nome del nodo gestito. |
Categoria | DscNodeStatus. |
Risorsa | Nome dell'account di Automazione di Azure. |
Tenant_g | GUID che identifica il tenant del chiamante. |
NodeId_g | GUID che identifica il nodo gestito. |
DscReportId_g | GUID che identifica il report. |
DscResourceId_s | Nome dell'istanza della risorsa DSC. |
DscResourceName_s | Nome della risorsa DSC. |
DscResourceStatus_s | Indica se la risorsa DSC è conforme. |
DscModuleName_s | Nome del modulo di PowerShell che include la risorsa DSC. |
DscModuleVersion_s | Versione del modulo di PowerShell che include la risorsa DSC. |
DscConfigurationName_s | Nome della configurazione applicata al nodo. |
ErrorCode_s | Codice errore in caso di esito negativo della risorsa. |
ErrorMessage_s | Messaggio di errore in caso di esito negativo della risorsa. |
DscResourceDuration_d | Durata, in secondi, dell'esecuzione della risorsa DSC. |
SourceSystem | Come i log di Monitoraggio di Azure hanno raccolto i dati. Il valore è sempre Azure per diagnostica di Azure. |
ResourceId | Identificatore dell'account di Automazione di Azure. |
ResultDescription | Descrizione per questa operazione. |
SubscriptionId | ID della sottoscrizione di Azure (GUID) per l'account di Automazione. |
ResourceGroup | Nome del gruppo di risorse per l'account di Automazione. |
ResourceProvider | MICROSOFT.AUTOMATION. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | GUID che rappresenta l'ID di correlazione del report di conformità. |
Passaggi successivi
- Per una panoramica, vedere Panoramica di State Configuration di Automazione di Azure.
- Per iniziare, vedere Introduzione a State Configuration di Automazione di Azure.
- Per informazioni sulla compilazione di configurazioni DSC da assegnare ai nodi di destinazione, vedere Compilare configurazioni DSC in State Configuration di Automazione di Azure.
- Per informazioni di riferimento sui cmdlet di PowerShell, vedere Az.Automation.
- Per informazioni sui prezzi, vedere Prezzi di State Configuration di Automazione di Azure.
- Per un esempio dell'uso di State Configuration di Automazione di Azure in una pipeline di distribuzione continua, vedere Configurare la distribuzione continua con Chocolatey.
- Per altre informazioni su come creare query di ricerca diverse ed esaminare i log di State Configuration di Automazione con i log di Monitoraggio di Azure, vedere Ricerche nei log di Monitoraggio di Azure.
- Per altre informazioni sui log di Monitoraggio di Azure e sulle origini di raccolta dati, vedere Raccolta dei dati di archiviazione di Azure nella panoramica dei log di Monitoraggio di Azure.