Query di esempio di Azure Resource Graph per accedere ai dati delle operazioni di Gestore aggiornamenti di Azure

Di seguito sono riportate alcune query di esempio per iniziare a interrogare le informazioni di valutazione e distribuzione degli aggiornamenti raccolte dai computer gestiti. Per altre informazioni sui log creati da operazioni come le valutazioni degli aggiornamenti e le installazioni, vedere panoramica dei log di query.

Elenco degli aggiornamenti disponibili per tutte le macchine virtuali raggruppati per categoria di aggiornamento

La seguente query restituisce un elenco di aggiornamenti in sospeso per il computer con l'orario in cui è stata eseguita la valutazione, l'ID risorsa per la valutazione, il tipo di sistema operativo sul computer e gli aggiornamenti del sistema operativo disponibili in base alla classificazione degli aggiornamenti.

patchassessmentresources
| where type !has "softwarepatches"
| extend prop = parse_json(properties)
| extend lastTime = properties.lastModifiedDateTime
| extend updateRollupCount = prop.availablePatchCountByClassification.updateRollup, featurePackCount = prop.availablePatchCountByClassification.featurePack, servicePackCount = prop.availablePatchCountByClassification.servicePack, definitionCount = prop.availablePatchCountByClassification.definition, securityCount = prop.availablePatchCountByClassification.security, criticalCount = prop.availablePatchCountByClassification.critical, updatesCount = prop.availablePatchCountByClassification.updates, toolsCount = prop.availablePatchCountByClassification.tools, otherCount = prop.availablePatchCountByClassification.other, OS = prop.osType
| project lastTime, id, OS, updateRollupCount, featurePackCount, servicePackCount, definitionCount, securityCount, criticalCount, updatesCount, toolsCount, otherCount

Numero di installazioni degli aggiornamenti

La query seguente restituisce un elenco di installazioni di aggiornamenti con il relativo stato per i computer degli ultimi sette giorni. I risultati includono l'ora in cui è stata eseguita la distribuzione degli aggiornamenti, l'ID risorsa dell'installazione, i dettagli del computer e il conteggio degli aggiornamenti del sistema operativo installati in base al loro stato e alla selezione effettuata.

patchinstallationresources
| where type !has "softwarepatches"
| extend machineName = tostring(split(id, "/", 8)), resourceType = tostring(split(type, "/", 0)), tostring(rgName = split(id, "/", 4))
| extend prop = parse_json(properties)
| extend lTime = todatetime(prop.lastModifiedDateTime), OS = tostring(prop.osType), installedPatchCount = tostring(prop.installedPatchCount), failedPatchCount = tostring(prop.failedPatchCount), pendingPatchCount = tostring(prop.pendingPatchCount), excludedPatchCount = tostring(prop.excludedPatchCount), notSelectedPatchCount = tostring(prop.notSelectedPatchCount)
| where lTime > ago(7d)
| project lTime, RunID=name,machineName, rgName, resourceType, OS, installedPatchCount, failedPatchCount, pendingPatchCount, excludedPatchCount, notSelectedPatchCount

Elenchi delle installazioni degli aggiornamenti del sistema operativo Windows Server

La query seguente restituisce un elenco di installazioni di aggiornamenti Windows Server per con il relativo stato per i computer degli ultimi sette giorni. I risultati includono l'ora in cui è stata eseguita la distribuzione dell'aggiornamento, l'ID risorsa dell'installazione, i dettagli del computer e altri dettagli di distribuzione correlati.

patchinstallationresources
| where type has "softwarepatches" and isnull(properties.version)
| extend machineName = tostring(split(id, "/", 8)), resourceType = tostring(split(type, "/", 0)), tostring(rgName = split(id, "/", 4)), tostring(RunID = split(id, "/", 10))
| extend prop = parse_json(properties)
| extend lTime = todatetime(prop.lastModifiedDateTime), patchName = tostring(prop.patchName), kbId = tostring(prop.kbId), installationState = tostring(prop.installationState), classifications = tostring(prop.classifications)
| where lTime > ago(7d)
| project lTime, RunID, machineName, rgName, resourceType, patchName, kbId, classifications, installationState
| sort by RunID

Elenco delle installazioni degli aggiornamenti del sistema operativo Linux

La query seguente restituisce un elenco di installazioni di aggiornamenti per Linux con il relativo stato per i computer degli ultimi sette giorni. I risultati includono l'ora in cui è stata eseguita la distribuzione dell'aggiornamento, l'ID risorsa dell'installazione, i dettagli del computer e altri dettagli di distribuzione correlati.

patchinstallationresources
| where type has "softwarepatches" and isnotnull(properties.version) and isnull(properties.kbId)
| extend machineName = tostring(split(id, "/", 8)), resourceType = tostring(split(type, "/", 0)), tostring(rgName = split(id, "/", 4)), tostring(RunID = split(id, "/", 10))
| extend prop = parse_json(properties)
| extend lTime = todatetime(prop.lastModifiedDateTime), patchName = tostring(prop.patchName), version = tostring(prop.version), installationState = tostring(prop.installationState), classifications = tostring(prop.classifications)
| where lTime > ago(7d)
| project lTime, RunID, machineName, rgName, resourceType, patchName, version, classifications, installationState
| sort by RunID

Elenco dei record di esecuzione della manutenzione a livello di macchina virtuale

La query seguente restituisce un elenco di tutti i record di esecuzione della manutenzione per una macchina virtuale

maintenanceresources 
| where ['id'] contains "/subscriptions/<subscription-id>/resourcegroups/<resource-group>/providers/microsoft.compute/virtualmachines/<vm-name>" //VM Id here
| where ['type'] == "microsoft.maintenance/applyupdates" 
| where properties.maintenanceScope == "InGuestPatch"

Passaggi successivi