Integrera Azure Automation State Configuration med Azure Monitor-loggar
Kommentar
Azure Automation State Configuration tas ur bruk den 30 september 2027. Övergå till Azure Machine Configuration senast det datumet. Mer information finns i blogginlägget. Azure Machine Configuration-tjänsten kombinerar funktioner i DSC-tillägget, Azure Automation State Configuration och de vanligaste funktionerna från kundfeedback. Azure Machine Configuration innehåller även stöd för hybriddatorer via Arc-aktiverade servrar.
Viktigt!
Navigeringslänkarna Lägg till, Skriv konfiguration och Galleri tas bort från portalen den 31 mars 2025.
Varning
Azure Automation DSC för Linux har dragits tillbaka den 30 september 2023. Mer information finns i meddelandet.
Azure Automation State Configuration behåller nodstatusdata i 30 dagar. Du kan skicka nodstatusdata till Azure Monitor-loggar om du föredrar att behålla dessa data under en längre period. Efterlevnadsstatus visas i Azure Portal eller med PowerShell, för noder och för enskilda DSC-resurser i nodkonfigurationer.
Azure Monitor-loggar ger bättre driftssynlighet för dina Automation State Configuration-data och kan hjälpa dig att hantera incidenter snabbare. Med Azure Monitor-loggar kan du:
- Hämta efterlevnadsinformation för hanterade noder och enskilda resurser.
- Utlös ett e-postmeddelande eller en avisering baserat på efterlevnadsstatus.
- Skriv avancerade frågor över dina hanterade noder.
- Korrelera efterlevnadsstatus mellan Automation-konton.
- Använd anpassade vyer och sökfrågor för att visualisera dina runbook-resultat, runbook-jobbstatus och andra relaterade nyckelindikatorer eller mått.
Kommentar
Den här artikeln uppdaterades nyligen för att använda termen Azure Monitor-loggar i stället för Log Analytics. Loggdata lagras fortfarande på en Log Analytics-arbetsyta och samlas fortfarande in och analyseras av samma Log Analytics-tjänst. Vi uppdaterar terminologin för att bättre återspegla loggarnas roll i Azure Monitor. Mer information finns i Terminologiändringar i Azure Monitor.
Förutsättningar
Om du vill börja skicka dina Automation State Configuration-rapporter till Azure Monitor-loggar behöver du:
-
Modulen Az PowerShell. Kontrollera att du har den senaste versionen. Om det behövs kör du
Update-Module -Name Az
. - Ett Azure Automation-konto. Mer information finns i En introduktion till Azure Automation.
- En Log Analytics-arbetsyta. Mer information finns i Översikt över Azure Monitor-loggar.
- Minst en Azure Automation State Configuration-nod. Mer information finns i Registrera datorer för hantering av Azure Automation State Configuration.
- xDscDiagnostics-modulen, version 2.7.0.0 eller senare. Installationssteg finns i Felsöka önskad tillståndskonfiguration för Azure Automation.
Konfigurera integrering med Azure Monitor-loggar
Slutför följande steg för att börja importera data från Azure Automation State Configuration till Azure Monitor-loggar. Anvisningar om hur du använder portalen finns i Vidarebefordra Azure Automation-jobbdata till Azure Monitor-loggar.
Från datorn loggar du in på din Azure-prenumeration med cmdleten PowerShell Connect-AzAccount och följer anvisningarna på skärmen.
# 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>"
Ange ett lämpligt värde för variablerna
automationAccount
med det faktiska namnet på ditt Automation-konto ochworkspaceName
med det faktiska namnet på din Log Analytics-arbetsyta. Kör sedan skriptet.$automationAccount = "automationAccount" $law = "workspaceName"
Hämta resurs-ID:t för ditt Automation-konto genom att köra följande PowerShell-kommandon.
# Find the ResourceId for the Automation account $AutomationResourceId = (Get-AzResource -ResourceType 'Microsoft.Automation/automationAccounts' | Where-Object {$_.Name -eq $automationAccount}).ResourceId
Hämta resurs-ID för din Log Analytics-arbetsyta genom att köra följande PowerShell-kommandon.
# Find the ResourceId for the Log Analytics workspace $WorkspaceResourceId = (Get-AzResource ` -ResourceType 'Microsoft.OperationalInsights/workspaces' | WHERE {$_.Name -eq $law}).ResourceId
Om du vill konfigurera diagnostikinställningar för Automation-kontot för att vidarebefordra DSC-nodstatusloggdata till Azure Monitor-loggar skapar följande PowerShell-cmdlet en diagnostikinställning med det målet.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $true Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
När du vill sluta vidarebefordra loggdata från Automation State Configuration till Azure Monitor-loggar kör du följande PowerShell-cmdlet.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $false Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
Visa tillståndskonfigurationsloggarna
Du kan söka i tillståndskonfigurationsloggarna efter DSC-åtgärder genom att söka i Azure Monitor-loggar. När du har konfigurerat integrering med Azure Monitor-loggar för dina Automation State Configuration-data går du till ditt Automation-konto i Azure Portal. Välj sedan Loggar under Övervakning.
Stäng dialogrutan Frågor. Fönstret Loggsökning öppnas med en frågeregion som är begränsad till din Automation-kontoresurs. Posterna för DSC-åtgärder lagras i AzureDiagnostics
tabellen. Om du vill hitta noder som inte är kompatibla skriver du följande fråga.
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName contains "DSCNodeStatusData"
| where ResultType != "Compliant"
Filtreringsinformation:
- Filtrera på
DscNodeStatusData
för att returnera åtgärder för varje nod för tillståndskonfiguration. - Filtrera på
DscResourceStatusData
för att returnera åtgärder för varje DSC-resurs som anropas i nodkonfigurationen som tillämpas på resursen. - Filtrera på
DscResourceStatusData
för att returnera felinformation för eventuella DSC-resurser som misslyckas.
Mer information om hur du skapar loggfrågor för att hitta data finns i Översikt över loggfrågor i Azure Monitor.
Skicka ett e-postmeddelande när en tillståndskonfigurationsefterlevnadskontroll misslyckas
Gå tillbaka till din fråga som skapades tidigare.
Klicka på knappen + Ny aviseringsregel för att starta flödet för att skapa aviseringar.
I följande fråga ersätter du
NODENAME
med det faktiska namnet på den hanterade noden och klistrar sedan in den ändrade frågan i textrutan Sökfråga :AzureDiagnostics | where Category == "DscNodeStatus" | where NodeName_s == "NODENAME" | where OperationName == "DscNodeStatusData" | where ResultType == "Failed"
Om du konfigurerar loggar för mer än ett Automation-konto eller en prenumeration kan du gruppera dina aviseringar efter prenumeration och Automation-konto. Härled Automation-kontonamnet från
Resource
egenskapen i loggsökningsresultatet förDscNodeStatusData
.Läs Skapa, visa och hantera måttaviseringar med hjälp av Azure Monitor för att slutföra de återstående stegen.
Hitta misslyckade DSC-resurser över alla noder
En fördel med att använda Azure Monitor-loggar är att du kan söka efter misslyckade kontroller mellan noder. Om du vill hitta alla instanser av fel använder du följande fråga:
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName == "DscResourceStatusData"
| where ResultType == "Failed"
Visa historisk DSC-nodstatus
Om du vill visualisera din DSC-nodstatushistorik över tid kan du använda den här frågan:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION"
| where Category == "DscNodeStatus"
| where ResultType != "started"
| summarize count() by ResultType
Den här frågan visar ett diagram över nodstatusen över tid.
Azure Monitor-loggar poster
Azure Automation-diagnostik skapar två kategorier av poster i Azure Monitor-loggar:
- Nodstatusdata (
DscNodeStatusData
) - Resursstatusdata (
DscResourceStatusData
)
DscNodeStatusData
Property | beskrivning |
---|---|
TimeGenerated | Datum och tid när efterlevnadskontrollen kördes. |
OperationName |
DscNodeStatusData . |
ResultType | Värde som anger om noden är kompatibel. |
NodeName_s | Namnet på den hanterade noden. |
NodeComplianceStatus_s | Statusvärde som anger om noden är kompatibel. |
DscReportStatus | Statusvärde som anger om kompatibilitetskontrollen har körts. |
ConfigurationMode | Det läge som används för att tillämpa konfigurationen på noden. Möjliga värden är:
|
HostName_s | Namnet på den hanterade noden. |
IPAddress | IPv4-adressen för den hanterade noden. |
Kategori |
DscNodeStatus . |
Resurs | Namnet på Azure Automation-kontot. |
Tenant_g | GUID som identifierar klientorganisationen för anroparen. |
NodeId_g | GUID som identifierar den hanterade noden. |
DscReportId_g | GUID som identifierar rapporten. |
LastSeenTime_t | Datum och tid då rapporten senast visades. |
ReportStartTime_t | Datum och tid då rapporten startades. |
ReportEndTime_t | Datum och tid när rapporten har slutförts. |
NumberOfResources_d | Antalet DSC-resurser som anropas i konfigurationen som tillämpas på noden. |
SourceSystem | Källsystemet som identifierar hur Azure Monitor-loggar samlades in data. Alltid Azure för Azure-diagnostik. |
ResourceId | Resursidentifieraren för Azure Automation-kontot. |
ResultDescription | Resursbeskrivningen för den här åtgärden. |
SubscriptionId | Azure-prenumerations-ID (GUID) för Automation-kontot. |
ResourceGroup | Namnet på resursgruppen för Automation-kontot. |
ResourceProvider | MICROSOFT. AUTOMATISERING. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | En korrelationsidentifierare för efterlevnadsrapporten. |
DscResourceStatusData
Property | beskrivning |
---|---|
TimeGenerated | Datum och tid när efterlevnadskontrollen kördes. |
OperationName |
DscResourceStatusData . |
ResultType | Om resursen är kompatibel. |
NodeName_s | Namnet på den hanterade noden. |
Kategori | DscNodeStatus. |
Resurs | Namnet på Azure Automation-kontot. |
Tenant_g | GUID som identifierar klientorganisationen för anroparen. |
NodeId_g | GUID som identifierar den hanterade noden. |
DscReportId_g | GUID som identifierar rapporten. |
DscResourceId_s | Namnet på DSC-resursinstansen. |
DscResourceName_s | Namnet på DSC-resursen. |
DscResourceStatus_s | Om DSC-resursen är i kompatibilitet. |
DscModuleName_s | Namnet på PowerShell-modulen som innehåller DSC-resursen. |
DscModuleVersion_s | Versionen av PowerShell-modulen som innehåller DSC-resursen. |
DscConfigurationName_s | Namnet på konfigurationen som tillämpas på noden. |
ErrorCode_s | Felkoden om resursen misslyckades. |
ErrorMessage_s | Felmeddelandet om resursen misslyckades. |
DscResourceDuration_d | Den tid i sekunder som DSC-resursen kördes. |
SourceSystem | Hur Azure Monitor-loggar samlade in data. Alltid Azure för Azure-diagnostik. |
ResourceId | Identifieraren för Azure Automation-kontot. |
ResultDescription | Beskrivningen för den här åtgärden. |
SubscriptionId | Azure-prenumerations-ID (GUID) för Automation-kontot. |
ResourceGroup | Namnet på resursgruppen för Automation-kontot. |
ResourceProvider | MICROSOFT. AUTOMATISERING. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | Ett korrelations-ID för efterlevnadsrapporten. |
Nästa steg
- En översikt finns i Översikt över Azure Automation State Configuration.
- Kom igång genom att läsa Kom igång med Azure Automation State Configuration.
- Mer information om hur du kompilerar DSC-konfigurationer så att du kan tilldela dem till målnoder finns i Kompilera DSC-konfigurationer i Azure Automation State Configuration.
- En PowerShell-cmdlet-referens finns i Az.Automation.
- Prisinformation finns i Prissättning för Azure Automation State Configuration.
- Ett exempel på hur du använder Azure Automation State Configuration i en pipeline för kontinuerlig distribution finns i Konfigurera kontinuerlig distribution med Chocolatey.
- Mer information om hur du skapar olika sökfrågor och granskar Automation State Configuration-loggar med Azure Monitor-loggar finns i Loggsökningar i Azure Monitor-loggar.
- Mer information om Azure Monitor-loggar och datainsamlingskällor finns i Samla in Azure Storage-data i Översikt över Azure Monitor-loggar.