Przykładowe zapytania

Poniżej przedstawiono kilka przykładowych zapytań, które ułatwiają rozpoczęcie wykonywania zapytań dotyczących oceny aktualizacji i informacji dotyczących wdrażania zebranych z zarządzanych maszyn. Aby uzyskać więcej informacji na temat dzienników utworzonych na podstawie operacji, takich jak oceny aktualizacji i instalacje, zobacz omówienie dzienników zapytań.

Wyświetlanie listy dostępnych aktualizacji dla wszystkich maszyn pogrupowanych według kategorii aktualizacji

Poniższe zapytanie zwraca listę oczekujących aktualizacji dla maszyny z czasem, kiedy ocena została wykonana, identyfikator zasobu oceny, typ systemu operacyjnego na maszynie i aktualizacje systemu operacyjnego dostępne na podstawie klasyfikacji aktualizacji.

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

Liczba instalacji aktualizacji

Poniższe zapytanie zwraca listę instalacji aktualizacji ze stanem maszyn z ostatnich siedmiu dni. Wyniki obejmują czas uruchomienia wdrożenia aktualizacji, identyfikator zasobu instalacji, szczegóły maszyny i liczbę zainstalowanych aktualizacji systemu operacyjnego na podstawie ich stanu i wybranej opcji.

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

Lista instalacji aktualizacji systemu operacyjnego Windows Server

Poniższe zapytanie zwraca listę instalacji aktualizacji dla systemu Windows Server ze stanem maszyn z ostatnich siedmiu dni. Wyniki obejmują czas uruchomienia wdrożenia aktualizacji, identyfikator zasobu instalacji, szczegóły komputera i inne powiązane szczegóły wdrożenia.

patchinstallationresources
| where type has "softwarepatches" and properties !has "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

Lista instalacji aktualizacji systemu operacyjnego Linux

Poniższe zapytanie zwraca listę instalacji aktualizacji dla systemu Linux ze stanem maszyn z ostatnich siedmiu dni. Wyniki obejmują czas uruchomienia wdrożenia aktualizacji, identyfikator zasobu instalacji, szczegóły komputera i inne powiązane szczegóły wdrożenia.

patchinstallationresources
| where type has "softwarepatches" and properties has "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), 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

Lista rekordów przebiegu konserwacji na poziomie maszyny wirtualnej

Poniższe zapytanie zwraca listę wszystkich rekordów przebiegów konserwacji dla maszyny wirtualnej

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"

Następne kroki