Diagnostische logboeken van Azure Automation doorsturen naar Azure Monitor
Azure Automation kan de status van runbooktaak en taakstromen verzenden naar uw Log Analytics-werkruimte. Dit proces omvat geen koppeling tussen werkruimten en is volledig onafhankelijk en stelt u in staat om eenvoudige onderzoeken uit te voeren. Taaklogboeken en taakstromen zijn zichtbaar in Azure Portal of met PowerShell voor afzonderlijke taken. Met Azure Monitor-logboeken voor uw Automation-account kunt u het volgende doen:
- Krijg inzicht in de status van uw Automation-taken.
- Een e-mail of waarschuwing activeren op basis van de status van uw runbooktaak (bijvoorbeeld mislukt of onderbroken).
- Geavanceerde query's voor verschillende taakstromen schrijven.
- Taken voor verschillende Automation-accounts aan elkaar te relateren.
- Gebruik aangepaste weergaven en zoekquery's om uw runbookresultaten, de taakstatus van het runbook en andere gerelateerde sleutelindicatoren of metrische gegevens te visualiseren via een Azure-dashboard.
- Haal de auditlogboeken op met betrekking tot Automation-accounts, runbooks en andere bewerkingen voor het maken, wijzigen en verwijderen van assets.
Met behulp van Azure Monitor-logboeken kunt u logboeken uit verschillende resources samenvoegen in dezelfde werkruimte, waar deze kunnen worden geanalyseerd met query's om de verzamelde gegevens snel op te halen, samen te voegen en te analyseren. U kunt query's maken en testen met behulp van Log Analytics in Azure Portal en vervolgens de gegevens rechtstreeks analyseren met behulp van deze hulpprogramma's of query's opslaan voor gebruik met visualisatie - of waarschuwingsregels.
Azure Monitor maakt gebruik van een versie van de Kusto-querytaal (KQL) die wordt gebruikt door Azure Data Explorer die geschikt is voor eenvoudige logboekquery's. Het bevat ook geavanceerde functionaliteit, zoals aggregaties, joins en slimme analyses. Via diverse lessen kunt u de querytaal snel leren.
Diagnostische instellingen voor Azure Automation
U kunt de volgende platformlogboeken en metrische gegevens doorsturen met behulp van de ondersteuning voor diagnostische instellingen van Automation:
Data types | Beschrijving |
---|---|
Taaklogboeken | Status van de runbooktaak in het Automation-account. |
Taakstromen | Status van de taakstromen in het runbook dat is gedefinieerd in het Automation-account. |
DSCNodeStatus | Status van het DSC-knooppunt. |
AuditEvent | Alle resourcelogboeken waarmee interacties van klanten met gegevens of de instellingen van de Azure Automation-service worden vastgelegd. |
Metrische gegevens | Totaal aantal taken, totale update, uitvoeringen van implementatiecomputers, totale update-implementatieuitvoeringen. |
Diagnostische instellingen configureren in Azure Portal
U kunt diagnostische instellingen configureren in Azure Portal vanuit het menu voor de Automation-accountresource.
Selecteer diagnostische instellingen in het menu Automation-account onder Bewaking.
Klik op Diagnostische instelling toevoegen.
Voer een instellingsnaam in de naam van de diagnostische instelling in als deze nog geen instellingsnaam heeft.
U kunt ook alle categorieën logboeken en metrische gegevens weergeven.
Logboeken en metrische gegevens die u wilt routeren : kies een categoriegroep of schakel de afzonderlijke selectievakjes in voor elke categorie gegevens die u naar de opgegeven bestemmingen wilt verzenden. Kies AllMetrics als u metrische gegevens wilt opslaan in Azure Monitor-logboeken.
Doeldetails : schakel het selectievakje voor elke bestemming in. Op basis van de selectie van elk vak worden de opties weergegeven waarmee u aanvullende informatie kunt toevoegen.
Log Analytics : voer de naam van het abonnement en de werkruimte in. Als u geen werkruimte hebt, moet u er een maken voordat u doorgaat.
Event Hubs: Geef de volgende criteria op:
- Abonnement: hetzelfde abonnement als dat van de Event Hub.
- Event Hub-naamruimte: Maak Event Hub als u er nog geen hebt.
- Event Hub-naam (optioneel): Als u geen naam opgeeft, wordt er een Event Hub gemaakt voor elke logboekcategorie. Als u meerdere categorieën verzendt, geeft u een naam op om het aantal gemaakte Event Hubs te beperken. Zie quota en limieten voor Azure Event Hubs voor meer informatie.
- Event Hub-beleid (optioneel): Een beleid definieert de machtigingen die het streamingmechanisme heeft. Zie de functie Event Hubs.
Opslag: kies het abonnement, het opslagaccount en het bewaarbeleid.
Partnerintegratie: U moet eerst een partnerintegratie in uw abonnement installeren. Configuratieopties variëren per partner. Zie Azure Monitor-integratie voor meer informatie.
Klik op Opslaan.
Na enkele ogenblikken wordt de nieuwe instelling weergegeven in de lijst met instellingen voor deze resource en worden logboeken naar de opgegeven bestemmingen gestreamd wanneer er nieuwe gebeurtenisgegevens worden gegenereerd. Er kan een tijdsverschil van 15 minuten zijn tussen de gebeurtenis die wordt verzonden en de weergave ervan in de Log Analytics-werkruimte.
Query's uitvoeren op de logboeken
De gegenereerde logboeken opvragen:
Selecteer Logboeken in uw Automation-account onder Bewaking.
Selecteer Automation-taken onder Alle query's.
Selecteer een van de query's die u wilt uitvoeren en klik op Uitvoeren.
Als u een aangepaste query wilt uitvoeren, sluit u het venster Query's en plakt u uw aangepaste query in het nieuwe queryvenster en klikt u op Uitvoeren.
De uitvoer van de query wordt weergegeven in het deelvenster Resultaten .
Klik op Nieuwe waarschuwingsregel om een Azure Monitor-waarschuwing voor deze query te configureren.
Azure Monitor-logboekrecords
Diagnostische gegevens van Azure Automation maken de volgende typen records in Azure Monitor-logboeken, getagd als AzureDiagnostics
. De tabellen in de onderstaande secties zijn voorbeelden van records die door Azure Automation worden gegenereerd en de gegevenstypen die worden weergegeven in zoekresultaten voor logboeken.
Taaklogboeken
Eigenschappen | Beschrijving |
---|---|
TimeGenerated | Datum en tijd van uitvoering van de runbooktaak. |
RunbookName_s | Naam/namen van het runbook. |
Caller_s | Aanroeper die de bewerking heeft gestart. Mogelijke waarden zijn een e-mailadres of het systeem voor geplande taken. |
Tenant_g | GUID (globally unique identifier) die de tenant voor de aanroeper identificeert. |
JobId_g | GUID die de runbooktaak identificeert. |
ResultType | Status van de runbooktaak. Mogelijke waarden zijn: - Nieuw -Geschapen - Gestart - Gestopt - Onderbroken - Mislukt -Volbracht |
Categorie | Classificatie van het type gegevens. Voor Automation is de waarde JobLogs. |
OperationName | Type bewerking uitgevoerd in Azure. Voor Automation is de waarde Taak. |
Bron | Naam van het Automation-account |
SourceSystem | Systeem dat azure Monitor-logboeken gebruiken om de gegevens te verzamelen. De waarde is altijd Azure voor diagnostische gegevens van Azure. |
ResultDescription | Resultaatstatus runbooktaak. Mogelijke waarden zijn: - Taak is gestart - Taak is mislukt - Taak is voltooid |
CorrelationId | Correlatie-GUID van de runbooktaak. |
ResourceId | Resource-id van het Azure Automation-account van het runbook. |
SubscriptionId | GuiD van Het Azure-abonnement voor het Automation-account. |
ResourceGroup | Naam van de resourcegroep voor het Automation-account. |
ResourceProvider | Naam van de resourceprovider. De waarde is MICROSOFT. AUTOMATISERING. |
ResourceType | Resourcetype. De waarde is AUTOMATIONACCOUNTS. |
Taakstromen
Eigenschappen | Beschrijving |
---|---|
TimeGenerated | De datum en tijd waarop de runbooktaak is uitgevoerd. |
RunbookName_s | Naam van het runbook. |
Caller_s | Aanroeper die de bewerking heeft gestart. Mogelijke waarden zijn een e-mailadres of het systeem voor geplande taken. |
StreamType_s | Type taakstroom. Mogelijke waarden zijn: - Voortgang - Uitvoer - Waarschuwing - Fout - Foutopsporing - Uitgebreid |
Tenant_g | GUID die de tenant voor de aanroeper identificeert. |
JobId_g | GUID die de runbooktaak identificeert. |
ResultType | De status van de runbooktaak. Mogelijke waarden zijn: - Wordt uitgevoerd |
Categorie | Classificatie van het type gegevens. Voor Automation is de waarde JobStreams. |
OperationName | Type bewerking uitgevoerd in Azure. Voor Automation is de waarde Taak. |
Bron | Naam van het Automation-account. |
SourceSystem | Systeem dat azure Monitor-logboeken gebruiken om de gegevens te verzamelen. De waarde is altijd Azure voor diagnostische gegevens van Azure. |
ResultDescription | Beschrijving die de uitvoerstroom van het runbook bevat. |
CorrelationId | Correlatie-GUID van de runbooktaak. |
ResourceId | Resource-id van het Azure Automation-account van het runbook. |
SubscriptionId | GuiD van Het Azure-abonnement voor het Automation-account. |
ResourceGroup | Naam van de resourcegroep voor het Automation-account. |
ResourceProvider | Resourceprovider. De waarde is MICROSOFT. AUTOMATISERING. |
ResourceType | Resourcetype. De waarde is AUTOMATIONACCOUNTS. |
Notitie
Zorg ervoor dat referenties niet naar taakstreams worden verzonden. Service verwijdert referenties voordat taakstromen in diagnostische logboeken worden weergegeven.
Controlegebeurtenissen
Eigenschappen | Beschrijving |
---|---|
TenantID | GUID die de tenant voor de aanroeper identificeert. |
TimeGenerated (UTC) | Datum en tijd waarop de runbooktaak wordt uitgevoerd. |
Categorie | AuditEvent |
ResourceGroup | Resourcegroepnaam van het Automation-account. |
Abonnements-id | GuiD van Het Azure-abonnement voor het Automation-account. |
ResourceProvider | MICROSOFT. AUTOMATISERING |
Bron | Naam van Automation-account |
ResourceType | AUTOMATIONACCOUNTS |
OperationName | Mogelijke waarden zijn Bijwerken, Maken, Verwijderen. |
ResultType | Status van de runbooktaak. Mogelijke waarde is: Voltooid. |
CorrelationId | Correlatie-GUID van de runbooktaak. |
ResultDescription | Resultaatstatus runbooktaak. Mogelijke waarden zijn Bijwerken, Maken, Verwijderen. |
Tenant_g | GUID die de tenant voor de aanroeper identificeert. |
SourceSystem | Systeem dat azures Monitor-logboeken gebruiken om de gegevens te verzamelen. De waarde is altijd Azure voor diagnostische gegevens van Azure. |
clientInfo_IpAddress_s | {scrubbed} |
clientInfo_PrincipalName_s | {scrubbed} |
clientInfo_TenantId_g | Tenant-id van de client. |
clientInfo_Issuer_s | |
clientInfo_ObjectId_g | Object-id van de client. |
clientInfo_AppId_g | AppID van de client. |
clientInfo_ClientRequestId_g | RequestID van de client |
targetResources_Resource_s | Account, taak, referentie, verbindingen, variabelen, runbook. |
Type | AzureDiagnostics |
_ResourceId | Resource-id van het Azure Automation-account van het runbook. |
Automation-logboeken weergeven in Azure Monitor-logboeken
Nu u uw Automation-taakstromen en -logboeken naar Azure Monitor-logboeken hebt verzonden, gaan we kijken wat u kunt doen met deze logboeken in Azure Monitor-logboeken.
Voer de volgende query uit om de logboeken te bekijken: kusto AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION"
Voorbeeldquery's voor taaklogboeken en taakstromen
Alle taken zoeken die zijn voltooid met een fout
Naast scenario's zoals waarschuwingen voor fouten, kunt u vinden wanneer een runbooktaak een niet-afsluitfout heeft. In deze gevallen produceert PowerShell een foutstroom, maar de niet-afsluitfouten veroorzaken niet dat uw taak wordt onderbroken of mislukt.
- Klik in uw Log Analytics-werkruimte op Logboeken.
- Typ in het queryveld:
AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and StreamType_s == "Error" | summarize AggregatedValue = count () by JobId_g.
- Klik op Zoeken.
Taakstromen voor een taak weergeven
Wanneer u fouten in een taak opspoort, wilt u mogelijk ook de taakstromen bekijken. De volgende query toont alle streams voor één taak met GUID 2ebd22ea-e05e-4eb9-9d76-d73cbd4356e0
:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and JobId_g == "2ebd22ea-e05e-4eb9-9d76-d73cbd4356e0"
| sort by TimeGenerated asc
| project ResultDescription
Historische taakstatus weergeven
Ten slotte wilt u mogelijk uw taakgeschiedenis in de loop van de tijd visualiseren. U kunt deze query gebruiken om te zoeken naar de status van uw taken in de loop van de tijd.
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and ResultType != "started"
| summarize AggregatedValue = count() by ResultType, bin(TimeGenerated, 1h)
Zoek logboeken met fouten in de automatiseringstaken.
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION"
| where StreamType_s == "Error"
| project TimeGenerated, Category, JobId_g, OperationName, RunbookName_s, ResultDescription, _ResourceId
Azure Automation-taken zoeken die zijn voltooid
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and ResultType == "Completed"
| project TimeGenerated, RunbookName_s, ResultType, _ResourceId, JobId_g
Azure Automation-taken zoeken die zijn mislukt, onderbroken of gestopt
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Stopped" or ResultType == "Suspended")
| project TimeGenerated, RunbookName_s, ResultType, _ResourceId, JobId_g
Alle runbooks en taken weergeven die zijn voltooid met fouten
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and StreamType_s == "Error"
| project TimeGenerated, RunbookName_s, StreamType_s, _ResourceId, ResultDescription, JobId_g
Een e-mailbericht verzenden wanneer een runbooktaak mislukt of onderbreekt
In de volgende stappen wordt uitgelegd hoe u e-mailwaarschuwingen instelt in Azure Monitor om te melden wanneer er iets misgaat met een runbooktaak.
Als u een waarschuwingsregel wilt maken, maakt u een logboekzoekopdracht naar de runbooktaakrecords die de waarschuwing moeten aanroepen, zoals beschreven in Query op de logboeken. Klik op de regel +Nieuwe waarschuwing om de waarschuwingsregel te configureren.
Selecteer Logboeken in uw Automation-account onder Bewaking.
Maak een zoekquery voor logboeken voor uw waarschuwing door een zoekcriteria in het queryveld in te voeren.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Suspended")
U kunt ook groeperen op de naam van het runbook met behulp van:
AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Suspended") | summarize AggregatedValue = count() by RunbookName_s
Als u het scherm Waarschuwingsregel maken wilt openen, klikt u boven aan de pagina op +Nieuwe waarschuwingsregel . Zie Logboekwaarschuwingen in Azure voor meer informatie over de opties voor het configureren van de waarschuwingen
Diagnostische auditlogboeken van Azure Automation
U kunt nu ook auditlogboeken verzenden naar de Azure Monitor-werkruimte. Hierdoor kunnen ondernemingen belangrijke automation-accountactiviteiten bewaken voor beveiliging en naleving. Wanneer deze optie is ingeschakeld via de diagnostische azure-instellingen, kunt u telemetrie verzamelen over het maken, bijwerken en verwijderen van bewerkingen voor de Automation-runbooks, taken en automatiseringsassets, zoals verbinding, referentie, variabele en certificaat. U kunt ook de waarschuwingen voor auditlogboekvoorwaarden configureren als onderdeel van uw beveiligingsbewakingsvereisten.
Verschil tussen activiteitenlogboeken en auditlogboeken
Activiteitenlogboek is een platformlogboekin Azure dat inzicht biedt in gebeurtenissen op abonnementsniveau. Het activiteitenlogboek voor het Automation-account bevat informatie over wanneer een automatiseringsresource wordt gewijzigd of gemaakt of verwijderd. De naam of id van de resource wordt echter niet vastgelegd.
Auditlogboeken voor Automation-accounts leggen de naam en id van de resource vast, zoals automatiseringsvariabele, referenties, verbinding enzovoort, samen met het type bewerking dat voor de resource wordt uitgevoerd en Azure Automation zou enkele details verwijderen, zoals client-IP-gegevens die voldoen aan de AVG-naleving.
Activiteitenlogboeken bevatten details zoals client-IP, omdat een activiteitenlogboek een platformlogboek is dat gedetailleerde diagnostische en controle-informatie biedt voor Azure-resources. Ze worden automatisch gegenereerd voor activiteiten die plaatsvinden in ARM en worden gepusht naar de resourceprovider van het activiteitenlogboek. Omdat activiteitenlogboeken deel uitmaken van Azure-bewaking, worden er enkele clientgegevens weergegeven om inzicht te krijgen in de clientactiviteit.
Voorbeeldquery's voor auditlogboeken
Query om auditlogboeken van Automation-resources weer te geven
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent"
Query uitvoeren om een variabele bij te werken, te maken of te verwijderen
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s == "Variable"
Query uitvoeren om runbookbewerkingen te bewaken, zoals maken, concept of bijwerken
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Runbook"
Query uitvoeren om het maken, bijwerken of verwijderen van een certificaat bij te houden
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Certificate"
Query uitvoeren voor het controleren van het maken, bijwerken of verwijderen van referenties
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Credential"
Uitvoer van taakstatus filteren die is geconverteerd naar een JSON-object
Onlangs hebben we het gedrag gewijzigd van hoe de Automation-logboekgegevens naar de tabel in de AzureDiagnostics
Log Analytics-service worden geschreven, waarbij de JSON-eigenschappen niet meer worden opgesplitst in afzonderlijke velden. Als u uw runbook hebt geconfigureerd voor het opmaken van objecten in de uitvoerstroom in JSON-indeling als afzonderlijke kolommen, moet u uw query's opnieuw configureren om dat veld te parseren naar een JSON-object om toegang te krijgen tot deze eigenschappen. Dit wordt bereikt met behulp van json parseren om toegang te krijgen tot een specifiek JSON-element in een bekend pad.
Een runbook formatteert bijvoorbeeld de eigenschap ResultDescription in de uitvoerstroom in JSON-indeling met meerdere velden. Als u wilt zoeken naar de status van uw taken die een mislukte status hebben, zoals is opgegeven in een veld met de naam Status, gebruikt u deze voorbeeldquery om de ResultDescription te doorzoeken met de status Mislukt:
AzureDiagnostics
| where Category == 'JobStreams'
| extend jsonResourceDescription = parse_json(ResultDescription)
| where jsonResourceDescription.Status == 'Failed'
Volgende stappen
- Zie Logboekzoekopdrachten in Azure Monitor-logboeken voor informatie over het samenstellen van zoekquery's en het bekijken van de Automation-taaklogboeken met Azure Monitor-logboeken.
- Zie Runbookuitvoer controleren voor meer informatie over het maken en ophalen van uitvoer- en foutberichten uit runbooks.
- Zie Runbookuitvoering in Azure Automation voor meer informatie over runbookuitvoering, het bewaken van runbooktaken en andere technische details.
- Zie Overzicht van het verzamelen van Azure-opslaggegevens in Azure Monitor-logboeken voor meer informatie over Azure Monitor-logboeken en gegevensverzamelingsbronnen.
- Zie Voor hulp bij het oplossen van problemen met Log Analytics waarom Log Analytics geen gegevens meer verzamelt.