Integrowanie usługi Azure Automation State Configuration z dziennikami usługi Azure Monitor
Uwaga
Usługa Azure Automation State Configuration zostanie wycofana 30 września 2027 r., przechodząc do usługi Azure Machine Configuration do tej daty. Aby uzyskać więcej informacji, zobacz ogłoszenie w blogu. Usługa Azure Machine Configuration łączy funkcje rozszerzenia DSC, usługi Azure Automation State Configuration i najczęściej żądanych funkcji opinii klientów. Usługa Azure Machine Configuration obejmuje również obsługę maszyn hybrydowych za pośrednictwem serwerów z obsługą usługi Arc.
Uwaga
Usługa Azure Automation DSC dla systemu Linux została wycofana 30 września 2023 r. Aby uzyskać więcej informacji, zobacz ogłoszenie.
Usługa Azure Automation State Configuration przechowuje dane stanu węzła przez 30 dni. Możesz wysłać dane stanu węzła do dzienników usługi Azure Monitor, jeśli wolisz przechowywać te dane przez dłuższy okres. Stan zgodności jest widoczny w witrynie Azure Portal lub w programie PowerShell dla węzłów i dla poszczególnych zasobów DSC w konfiguracjach węzłów.
Dzienniki usługi Azure Monitor zapewniają większą widoczność operacyjną danych usługi Automation State Configuration i mogą pomóc w szybszym rozwiązywaniu problemów. Dzienniki usługi Azure Monitor umożliwiają:
- Uzyskaj informacje o zgodności dla węzłów zarządzanych i poszczególnych zasobów.
- Wyzwalanie wiadomości e-mail lub alertu na podstawie stanu zgodności.
- Pisanie zaawansowanych zapytań w węzłach zarządzanych.
- Skorelowanie stanu zgodności między kontami usługi Automation.
- Użyj widoków niestandardowych i zapytań wyszukiwania, aby wizualizować wyniki elementu Runbook, stan zadania elementu Runbook i inne powiązane kluczowe wskaźniki lub metryki.
Uwaga
Ten artykuł został niedawno zaktualizowany, aby użyć terminu Dzienniki usługi Azure Monitor zamiast usługi Log Analytics. Dane dziennika są nadal przechowywane w obszarze roboczym usługi Log Analytics i są nadal zbierane i analizowane przez tę samą usługę Log Analytics. Aktualizujemy terminologię, aby lepiej odzwierciedlać rolę dzienników w usłudze Azure Monitor. Aby uzyskać szczegółowe informacje, zobacz Zmiany terminologii usługi Azure Monitor.
Wymagania wstępne
Aby rozpocząć wysyłanie raportów usługi Automation State Configuration do dzienników usługi Azure Monitor, potrzebne są następujące elementy:
- Moduł Az programu PowerShell. Upewnij się, że masz najnowszą wersję. W razie potrzeby uruchom polecenie
Update-Module -Name Az
. - Konto usługi Azure Automation. Aby uzyskać więcej informacji, zobacz Wprowadzenie do usługi Azure Automation.
- Obszar roboczy usługi Log Analytics. Aby uzyskać więcej informacji, zobacz Omówienie dzienników usługi Azure Monitor.
- Co najmniej jeden węzeł usługi Azure Automation State Configuration. Aby uzyskać więcej informacji, zobacz Dołączanie maszyn do zarządzania przez usługę Azure Automation State Configuration.
- Moduł xDscDiagnostics w wersji 2.7.0.0 lub nowszej. Aby uzyskać instrukcje instalacji, zobacz Rozwiązywanie problemów z konfiguracją żądanego stanu usługi Azure Automation.
Konfigurowanie integracji z dziennikami usługi Azure Monitor
Aby rozpocząć importowanie danych z usługi Azure Automation State Configuration do dzienników usługi Azure Monitor, wykonaj następujące kroki. Aby uzyskać instrukcje przy użyciu portalu, zobacz Przekazywanie danych zadań usługi Azure Automation do dzienników usługi Azure Monitor.
Na komputerze zaloguj się do subskrypcji platformy Azure przy użyciu polecenia cmdlet Programu PowerShell Connect-AzAccount i postępuj zgodnie z instrukcjami wyświetlanymi na ekranie.
# 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>"
Podaj odpowiednią wartość dla zmiennych
automationAccount
o rzeczywistej nazwie konta usługi Automation iworkspaceName
rzeczywistej nazwie obszaru roboczego usługi Log Analytics. Następnie wykonaj skrypt.$automationAccount = "automationAccount" $law = "workspaceName"
Pobierz identyfikator zasobu konta usługi Automation, uruchamiając następujące polecenia programu PowerShell.
# Find the ResourceId for the Automation account $AutomationResourceId = (Get-AzResource -ResourceType 'Microsoft.Automation/automationAccounts' | Where-Object {$_.Name -eq $automationAccount}).ResourceId
Pobierz identyfikator zasobu obszaru roboczego usługi Log Analytics, uruchamiając następujące polecenia programu PowerShell.
# Find the ResourceId for the Log Analytics workspace $WorkspaceResourceId = (Get-AzResource ` -ResourceType 'Microsoft.OperationalInsights/workspaces' | WHERE {$_.Name -eq $law}).ResourceId
Aby skonfigurować ustawienia diagnostyczne na koncie usługi Automation w celu przekazywania danych dziennika stanu węzła DSC do dzienników usługi Azure Monitor, następujące polecenie cmdlet programu PowerShell tworzy ustawienie diagnostyczne przy użyciu tego miejsca docelowego.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $true Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
Jeśli chcesz zatrzymać przekazywanie danych dziennika z usługi Automation State Configuration do dzienników usługi Azure Monitor, uruchom następujące polecenie cmdlet programu PowerShell.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $false Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
Wyświetlanie dzienników konfiguracji stanu
Dzienniki konfiguracji stanu można przeszukiwać pod kątem operacji DSC, wyszukując je w dziennikach usługi Azure Monitor. Po skonfigurowaniu integracji z dziennikami usługi Azure Monitor dla danych usługi Automation State Configuration przejdź do konta usługi Automation w witrynie Azure Portal. Następnie w obszarze Monitorowanie wybierz pozycję Dzienniki.
Zamknij okno dialogowe Zapytania. Zostanie otwarte okienko Przeszukiwanie dzienników z regionem zapytania w zakresie zasobu konta usługi Automation. Rekordy operacji DSC są przechowywane w AzureDiagnostics
tabeli. Aby znaleźć węzły, które nie są zgodne, wpisz następujące zapytanie.
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName contains "DSCNodeStatusData"
| where ResultType != "Compliant"
Szczegóły filtrowania:
- Filtruj
DscNodeStatusData
, aby zwracać operacje dla każdego węzła konfiguracji stanu. - Filtruj,
DscResourceStatusData
aby zwracać operacje dla każdego zasobu DSC wywoływanego w konfiguracji węzła zastosowanego do tego zasobu. - Filtruj,
DscResourceStatusData
aby zwrócić informacje o błędach dla wszystkich zasobów DSC, które kończą się niepowodzeniem.
Aby dowiedzieć się więcej na temat konstruowania zapytań dziennika w celu znalezienia danych, zobacz Omówienie zapytań dzienników w usłudze Azure Monitor.
Wysyłanie wiadomości e-mail w przypadku niepowodzenia sprawdzania zgodności usługi State Configuration
Wróć do utworzonego wcześniej zapytania.
Kliknij przycisk + Nowa reguła alertu, aby uruchomić przepływ tworzenia alertu.
W poniższym zapytaniu zastąp
NODENAME
rzeczywistą nazwą węzła zarządzanego, a następnie wklej poprawione zapytanie w polu tekstowym Wyszukaj zapytanie :AzureDiagnostics | where Category == "DscNodeStatus" | where NodeName_s == "NODENAME" | where OperationName == "DscNodeStatusData" | where ResultType == "Failed"
Jeśli skonfigurujesz dzienniki dla więcej niż jednego konta usługi Automation lub subskrypcji, możesz grupować alerty według subskrypcji i konta usługi Automation. Utwórz nazwę konta usługi Automation z
Resource
właściwości w wynikach wyszukiwania w dzienniku .DscNodeStatusData
Przejrzyj artykuł Tworzenie, wyświetlanie alertów metryk i zarządzanie nimi przy użyciu usługi Azure Monitor , aby wykonać pozostałe kroki.
Znajdowanie nieudanych zasobów DSC we wszystkich węzłach
Jedną z zalet korzystania z dzienników usługi Azure Monitor jest możliwość wyszukiwania nieudanych testów między węzłami. Aby znaleźć wszystkie wystąpienia błędów, użyj następującego zapytania:
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName == "DscResourceStatusData"
| where ResultType == "Failed"
Wyświetlanie historycznego stanu węzła DSC
Aby zwizualizować historię stanu węzła DSC w czasie, możesz użyć tego zapytania:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION"
| where Category == "DscNodeStatus"
| where ResultType != "started"
| summarize count() by ResultType
To zapytanie wyświetla wykres stanu węzła w czasie.
Rekordy dzienników usługi Azure Monitor
Diagnostyka usługi Azure Automation tworzy dwie kategorie rekordów w dziennikach usługi Azure Monitor:
- Dane o stanie węzła (
DscNodeStatusData
) - Dane stanu zasobu (
DscResourceStatusData
)
DscNodeStatusData
Właściwości | opis |
---|---|
TimeGenerated | Data i godzina uruchomienia sprawdzania zgodności. |
OperationName | DscNodeStatusData . |
ResultType | Wartość wskazująca, czy węzeł jest zgodny. |
NodeName_s | Nazwa węzła zarządzanego. |
NodeComplianceStatus_s | Wartość stanu określająca, czy węzeł jest zgodny. |
DscReportStatus | Wartość stanu wskazująca, czy sprawdzanie zgodności przebiegło pomyślnie. |
ConfigurationMode | Tryb używany do stosowania konfiguracji do węzła. Możliwe wartości to:
|
HostName_s | Nazwa węzła zarządzanego. |
IPAddress | Adres IPv4 zarządzanego węzła. |
Kategoria | DscNodeStatus . |
Zasób | Nazwa konta usługi Azure Automation. |
Tenant_g | Identyfikator GUID identyfikujący dzierżawę elementu wywołującego. |
NodeId_g | Identyfikator GUID identyfikujący węzeł zarządzany. |
DscReportId_g | Identyfikator GUID identyfikujący raport. |
LastSeenTime_t | Data i godzina ostatniego wyświetlenia raportu. |
ReportStartTime_t | Data i godzina rozpoczęcia raportu. |
ReportEndTime_t | Data i godzina zakończenia raportu. |
NumberOfResources_d | Liczba zasobów DSC wywoływanych w konfiguracji zastosowanej do węzła. |
SourceSystem | System źródłowy identyfikujący sposób zbierania danych przez dzienniki usługi Azure Monitor. Zawsze Azure w przypadku diagnostyki platformy Azure. |
ResourceId | Identyfikator zasobu konta usługi Azure Automation. |
ResultDescription | Opis zasobu dla tej operacji. |
SubscriptionId | Identyfikator subskrypcji platformy Azure (GUID) dla konta usługi Automation. |
ResourceGroup | Nazwa grupy zasobów dla konta usługi Automation. |
ResourceProvider | MICROSOFT. AUTOMATYZACJA. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | Identyfikator korelacji raportu zgodności. |
DscResourceStatusData
Właściwości | opis |
---|---|
TimeGenerated | Data i godzina uruchomienia sprawdzania zgodności. |
OperationName | DscResourceStatusData . |
ResultType | Czy zasób jest zgodny. |
NodeName_s | Nazwa węzła zarządzanego. |
Kategoria | DscNodeStatus. |
Zasób | Nazwa konta usługi Azure Automation. |
Tenant_g | Identyfikator GUID identyfikujący dzierżawę elementu wywołującego. |
NodeId_g | Identyfikator GUID identyfikujący węzeł zarządzany. |
DscReportId_g | Identyfikator GUID identyfikujący raport. |
DscResourceId_s | Nazwa wystąpienia zasobu DSC. |
DscResourceName_s | Nazwa zasobu DSC. |
DscResourceStatus_s | Czy zasób DSC jest zgodny. |
DscModuleName_s | Nazwa modułu programu PowerShell, który zawiera zasób DSC. |
DscModuleVersion_s | Wersja modułu programu PowerShell, który zawiera zasób DSC. |
DscConfigurationName_s | Nazwa konfiguracji zastosowanej do węzła. |
ErrorCode_s | Kod błędu, jeśli zasób zakończył się niepowodzeniem. |
ErrorMessage_s | Komunikat o błędzie, jeśli zasób zakończył się niepowodzeniem. |
DscResourceDuration_d | Czas w sekundach uruchomiony zasób DSC. |
SourceSystem | Jak dzienniki usługi Azure Monitor zbierały dane. Zawsze Azure w przypadku diagnostyki platformy Azure. |
ResourceId | Identyfikator konta usługi Azure Automation. |
ResultDescription | Opis tej operacji. |
SubscriptionId | Identyfikator subskrypcji platformy Azure (GUID) dla konta usługi Automation. |
ResourceGroup | Nazwa grupy zasobów dla konta usługi Automation. |
ResourceProvider | MICROSOFT. AUTOMATYZACJA. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | Identyfikator korelacji raportu zgodności. |
Następne kroki
- Aby zapoznać się z omówieniem, zobacz Omówienie usługi Azure Automation State Configuration.
- Aby rozpocząć, zobacz Rozpoczynanie pracy z usługą Azure Automation State Configuration.
- Aby dowiedzieć się więcej o kompilowaniu konfiguracji DSC w celu przypisania ich do węzłów docelowych, zobacz Kompilowanie konfiguracji DSC w usłudze Azure Automation State Configuration.
- Aby zapoznać się z dokumentacją poleceń cmdlet programu PowerShell, zobacz Az.Automation.
- Aby uzyskać informacje o cenach, zobacz Cennik usługi Azure Automation State Configuration.
- Aby zapoznać się z przykładem użycia usługi Azure Automation State Configuration w potoku ciągłego wdrażania, zobacz Konfigurowanie ciągłego wdrażania za pomocą aplikacji Chocolatey.
- Aby dowiedzieć się więcej na temat tworzenia różnych zapytań wyszukiwania i przeglądania dzienników konfiguracji stanu usługi Automation za pomocą dzienników usługi Azure Monitor, zobacz Przeszukiwanie dzienników w dziennikach usługi Azure Monitor.
- Aby dowiedzieć się więcej na temat dzienników usługi Azure Monitor i źródeł zbierania danych, zobacz Zbieranie danych usługi Azure Storage w temacie Omówienie dzienników usługi Azure Monitor.