Поделиться через


Примеры запросов Azure Resource Graph для получения доступа к данным операций Диспетчера обновлений Azure

Ниже приведены некоторые примеры запросов, которые помогут вам приступить к запросу сведений об оценке обновлений и развертывании, собранных на управляемых компьютерах. Дополнительные сведения о журналах, созданных из таких операций, как оценки обновлений и установки, см. в обзоре журналов запросов.

Список доступных обновлений ОС для всех компьютеров, сгруппированных по категории обновлений

Следующий запрос возвращает список предстоящих обновлений для компьютера, включая время выполнения оценки, ID ресурса для оценки, тип ОС на компьютере, а также сведения о доступных обновлениях ОС, исходя из классификации обновлений.

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

Количество установок обновлений

Следующий запрос возвращает список установок обновлений и их состояний для компьютеров за последние семь дней. Результаты включают время запуска развертывания обновления, ID ресурса установки, сведения о компьютере и количество установленных обновлений ОС, исходя из их состояния и выбранного вами варианта.

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

Вывод списка установленных обновлений ОС Windows Server

Следующий запрос возвращает список установок обновлений для Windows Server и их состояний для компьютеров за последние семь дней. Результаты включают время запуска развертывания обновления, ID ресурса установки, сведения о компьютере, а также другие связанные сведения о развертывании.

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

Вывод списка установленных обновлений ОС Linux

Следующий запрос возвращает список установок обновлений для Linux и их состояний для компьютеров за последние семь дней. Результаты включают время запуска развертывания обновления, ID ресурса установки, сведения о компьютере, а также другие связанные сведения о развертывании.

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

Список записей запуска обслуживания на уровне виртуальной машины

Следующий запрос возвращает список всех записей запуска обслуживания для виртуальной машины.

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"

Следующие шаги