Azure Monitor-activiteitenlogboekgegevens verzenden

Het Azure Monitor-activiteitenlogboek is een platformlogboek dat inzicht biedt in gebeurtenissen op abonnementsniveau. Het activiteitenlogboek bevat informatie zoals wanneer een resource wordt gewijzigd of wanneer een virtuele machine wordt gestart. U kunt het activiteitenlogboek weergeven in de Azure Portal, of items ophalen met PowerShell en CLI. Dit artikel bevat informatie over het weergeven van het activiteitenlogboek en het verzenden naar verschillende bestemmingen.

Voor meer functionaliteit maakt u om de volgende redenen een diagnostische instelling om het activiteitenlogboek naar een of meer van deze locaties te verzenden:

Zie Diagnostische instellingen maken om platformlogboeken en metrische gegevens naar verschillende bestemmingen te verzenden voor meer informatie over het maken van een diagnostische instelling.

Notitie

  • Vermeldingen in het activiteitenlogboek worden gegenereerd en kunnen niet worden gewijzigd of verwijderd.
  • Vermeldingen in het activiteitenlogboek vertegenwoordigen wijzigingen in het besturingsvlak, zoals het opnieuw opstarten van een virtuele machine, eventuele niet-gerelateerde vermeldingen moeten worden weggeschreven naar Azure Resource Logs
  • Vermeldingen in het activiteitenlogboek zijn meestal het gevolg van wijzigingen (bewerkingen voor maken, bijwerken of verwijderen) of een actie die is gestart. Bewerkingen die zijn gericht op het lezen van details van een resource, worden doorgaans niet vastgelegd.

Verzenden naar Log Analytics-werkruimte

Verzend het activiteitenlogboek naar een Log Analytics-werkruimte om de functie Azure Monitor-logboeken in te schakelen, waarbij u:

  • Correleert activiteitenlogboekgegevens met andere bewakingsgegevens die worden verzameld door Azure Monitor.
  • Voeg logboekvermeldingen van meerdere Azure-abonnementen en -tenants samen tot één locatie voor analyse.
  • Gebruik logboekquery's om complexe analyses uit te voeren en uitgebreide inzichten te krijgen in vermeldingen in activiteitenlogboeken.
  • Gebruik waarschuwingen voor zoeken in logboeken met activiteitengegevens voor complexere waarschuwingslogica.
  • Bewaar vermeldingen in het activiteitenlogboek langer dan de bewaarperiode van het activiteitenlogboek.
  • Er worden geen gegevensopname- of bewaarkosten in rekening gebracht voor activiteitenlogboekgegevens die zijn opgeslagen in een Log Analytics-werkruimte.
  • De standaardretentieperiode in Log Analytics is 90 dagen

Selecteer Activiteitenlogboeken exporteren om het activiteitenlogboek naar een Log Analytics-werkruimte te verzenden.

Screenshot that shows exporting activity logs.

U kunt het activiteitenlogboek van elk abonnement verzenden naar maximaal vijf werkruimten.

Activiteitenlogboekgegevens in een Log Analytics-werkruimte worden opgeslagen in een tabel met de naam AzureActivity die u kunt ophalen met een logboekquery in Log Analytics. De structuur van deze tabel is afhankelijk van de categorie van de logboekvermelding. Zie de azure Monitor-gegevensreferentie voor een beschrijving van de tabeleigenschappen.

Als u bijvoorbeeld het aantal records voor activiteitenlogboeken voor elke categorie wilt weergeven, gebruikt u de volgende query:

AzureActivity
| summarize count() by CategoryValue

Als u alle records in de beheercategorie wilt ophalen, gebruikt u de volgende query:

AzureActivity
| where CategoryValue == "Administrative"

Belangrijk

In sommige scenario's is het mogelijk dat waarden in velden van AzureActivity verschillende hoofdletters hebben dan equivalente waarden. Zorg ervoor dat u query's uitvoert op gegevens in AzureActivity om hoofdlettergevoelige operatoren te gebruiken voor tekenreeksvergelijkingen, of gebruik een scalaire functie om een veld af te dwingen voor een uniforme behuizing vóór vergelijkingen. Gebruik bijvoorbeeld de functie tolower() in een veld om af te dwingen dat deze altijd kleine letters of de operator =~ is bij het uitvoeren van een tekenreeksvergelijking.

Verzenden naar Azure Event Hubs

Verzend het activiteitenlogboek naar Azure Event Hubs om vermeldingen buiten Azure te verzenden, bijvoorbeeld naar een SIEM van derden of andere log analytics-oplossingen. Gebeurtenissen in het activiteitenlogboek van Event Hubs worden gebruikt in JSON-indeling met een records element dat de records in elke nettolading bevat. Het schema is afhankelijk van de categorie en wordt beschreven in het gebeurtenisschema van het Azure-activiteitenlogboek.

De volgende voorbeelduitvoergegevens zijn afkomstig van Event Hubs voor een activiteitenlogboek:

{
    "records": [
        {
            "time": "2019-01-21T22:14:26.9792776Z",
            "resourceId": "/subscriptions/s1/resourceGroups/MSSupportGroup/providers/microsoft.support/supporttickets/115012112305841",
            "operationName": "microsoft.support/supporttickets/write",
            "category": "Write",
            "resultType": "Success",
            "resultSignature": "Succeeded.Created",
            "durationMs": 2826,
            "callerIpAddress": "111.111.111.11",
            "correlationId": "c776f9f4-36e5-4e0e-809b-c9b3c3fb62a8",
            "identity": {
                "authorization": {
                    "scope": "/subscriptions/s1/resourceGroups/MSSupportGroup/providers/microsoft.support/supporttickets/115012112305841",
                    "action": "microsoft.support/supporttickets/write",
                    "evidence": {
                        "role": "Subscription Admin"
                    }
                },
                "claims": {
                    "aud": "https://management.core.windows.net/",
                    "iss": "https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/",
                    "iat": "1421876371",
                    "nbf": "1421876371",
                    "exp": "1421880271",
                    "ver": "1.0",
                    "http://schemas.microsoft.com/identity/claims/tenantid": "00000000-0000-0000-0000-000000000000",
                    "http://schemas.microsoft.com/claims/authnmethodsreferences": "pwd",
                    "http://schemas.microsoft.com/identity/claims/objectidentifier": "2468adf0-8211-44e3-95xq-85137af64708",
                    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "admin@contoso.com",
                    "puid": "20030000801A118C",
                    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "9vckmEGF7zDKk1YzIY8k0t1_EAPaXoeHyPRn6f413zM",
                    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "John",
                    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "Smith",
                    "name": "John Smith",
                    "groups": "cacfe77c-e058-4712-83qw-f9b08849fd60,7f71d11d-4c41-4b23-99d2-d32ce7aa621c,31522864-0578-4ea0-9gdc-e66cc564d18c",
                    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": " admin@contoso.com",
                    "appid": "c44b4083-3bq0-49c1-b47d-974e53cbdf3c",
                    "appidacr": "2",
                    "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation",
                    "http://schemas.microsoft.com/claims/authnclassreference": "1"
                }
            },
            "level": "Information",
            "location": "global",
            "properties": {
                "statusCode": "Created",
                "serviceRequestId": "50d5cddb-8ca0-47ad-9b80-6cde2207f97c"
            }
        }
    ]
}

Verzenden naar Azure Storage

Verzend het activiteitenlogboek naar een Azure Storage-account als u uw logboekgegevens langer dan 90 dagen wilt bewaren voor controle, statische analyse of back-up. Als u uw gebeurtenissen 90 dagen of minder moet bewaren, hoeft u archivering niet in te stellen voor een opslagaccount. Gebeurtenissen in het activiteitenlogboek worden gedurende 90 dagen bewaard in het Azure-platform.

Wanneer u het activiteitenlogboek naar Azure verzendt, wordt er een opslagcontainer gemaakt in het opslagaccount zodra er een gebeurtenis plaatsvindt. De blobs in de container gebruiken de volgende naamconventie:

insights-activity-logs/resourceId=/SUBSCRIPTIONS/{subscription ID}/y={four-digit numeric year}/m={two-digit numeric month}/d={two-digit numeric day}/h={two-digit 24-hour clock hour}/m=00/PT1H.json

Een bepaalde blob kan bijvoorbeeld een naam hebben die vergelijkbaar is met:

insights-logs-networksecuritygrouprulecounter/resourceId=/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/y=2020/m=06/d=08/h=18/m=00/PT1H.json

Elke PT1H.json blob bevat een JSON-object met gebeurtenissen uit logboekbestanden die zijn ontvangen tijdens het uur dat is opgegeven in de blob-URL. Tijdens het huidige uur worden gebeurtenissen toegevoegd aan het PT1H.json-bestand wanneer ze worden ontvangen, ongeacht wanneer ze zijn gegenereerd. De minuutwaarde in de URL m=00 is altijd 00 als blobs per uur worden gemaakt.

Elke gebeurtenis wordt opgeslagen in het PT1H.json-bestand met de volgende indeling. Deze indeling maakt gebruik van een algemeen schema op het hoogste niveau, maar is anders uniek voor elke categorie, zoals beschreven in het schema van het activiteitenlogboek.

{ "time": "2020-06-12T13:07:46.766Z", "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/MY-RESOURCE-GROUP/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/MV-VM-01", "correlationId": "0f0cb6b4-804b-4129-b893-70aeeb63997e", "operationName": "Microsoft.Resourcehealth/healthevent/Updated/action", "level": "Information", "resultType": "Updated", "category": "ResourceHealth", "properties": {"eventCategory":"ResourceHealth","eventProperties":{"title":"This virtual machine is starting as requested by an authorized user or process. It will be online shortly.","details":"VirtualMachineStartInitiatedByControlPlane","currentHealthStatus":"Unknown","previousHealthStatus":"Unknown","type":"Downtime","cause":"UserInitiated"}}}

Andere methoden voor het ophalen van gebeurtenissen in activiteitenlogboeken

U kunt ook toegang krijgen tot gebeurtenissen in activiteitenlogboeken met behulp van de volgende methoden:

Verouderde verzamelingsmethoden

Notitie

  • De oplossing voor Azure-activiteitenlogboeken is gebruikt om activiteitenlogboeken door te sturen naar Azure Log Analytics. Deze oplossing wordt op 15 september 2026 buiten gebruik gesteld en wordt automatisch geconverteerd naar diagnostische instellingen.

Als u activiteitenlogboeken verzamelt met behulp van de verouderde verzamelingsmethode, raden we u aan om activiteitenlogboeken naar uw Log Analytics-werkruimte te exporteren en de verouderde verzameling uit te schakelen met behulp van de gegevensbronnen - API verwijderen als volgt:

  1. Geef alle gegevensbronnen weer die zijn verbonden met de werkruimte met behulp van de gegevensbronnen - List By Workspace API en filter op activiteitenlogboeken door de instelling in te stellen kind eq 'AzureActivityLog'.

    Screenshot showing the configuration of the Data Sources - List By Workspace API.

  2. Kopieer de naam van de verbinding die u wilt uitschakelen vanuit het API-antwoord.

    Screenshot showing the connection information you need to copy from the output of the Data Sources - List By Workspace API.

  3. Gebruik de gegevensbronnen - VERWIJDER API om het verzamelen van activiteitenlogboeken voor de specifieke resource te stoppen.

    Screenshot of the configuration of the Data Sources - Delete API.

Verouderde logboekprofielen beheren

Logboekprofielen zijn de verouderde methode voor het verzenden van het activiteitenlogboek naar opslag of Event Hubs. Als u deze methode gebruikt, kunt u overwegen om over te stappen naar diagnostische instellingen, die betere functionaliteit en consistentie bieden met resourcelogboeken.

Als er al een logboekprofiel bestaat, moet u eerst het bestaande logboekprofiel verwijderen en vervolgens een nieuw logboekprofiel maken.

  1. Gebruik Get-AzLogProfile dit om te bepalen of er een logboekprofiel bestaat. Als er een logboekprofiel bestaat, noteert u de Name eigenschap.

  2. Gebruik Remove-AzLogProfile dit om het logboekprofiel te verwijderen met behulp van de waarde uit de Name eigenschap.

    # For example, if the log profile name is 'default'
    Remove-AzLogProfile -Name "default"
    
  3. Gebruik Add-AzLogProfile dit om een nieuw logboekprofiel te maken:

    Add-AzLogProfile -Name my_log_profile -StorageAccountId /subscriptions/s1/resourceGroups/myrg1/providers/Microsoft.Storage/storageAccounts/my_storage -serviceBusRuleId /subscriptions/s1/resourceGroups/Default-ServiceBus-EastUS/providers/Microsoft.ServiceBus/namespaces/mytestSB/authorizationrules/RootManageSharedAccessKey -Location global,westus,eastus -RetentionInDays 90 -Category Write,Delete,Action
    
    Eigenschappen Vereist Description
    Meting Ja Naam van uw logboekprofiel.
    StorageAccountId Nee Resource-id van het opslagaccount waarin het activiteitenlogboek moet worden opgeslagen.
    serviceBusRuleId Nee Service Bus-regel-id voor de Service Bus-naamruimte waar u Event Hubs wilt maken. Deze tekenreeks heeft de indeling {service bus resource ID}/authorizationrules/{key name}.
    Locatie Ja Door komma's gescheiden lijst met regio's waarvoor u activiteitenlogboekgebeurtenissen wilt verzamelen.
    RetentionInDays Ja Aantal dagen waarvoor gebeurtenissen moeten worden bewaard in het opslagaccount, van 1 tot en met 365. Met een waarde van nul worden de logboeken voor onbepaalde tijd opgeslagen.
    Categorie Nee Door komma's gescheiden lijst met gebeurteniscategorieën die moeten worden verzameld. Mogelijke waarden zijn Schrijven, Verwijderen en Actie.

Voorbeeldscript

Met dit PowerShell-voorbeeldscript maakt u een logboekprofiel waarmee het activiteitenlogboek naar zowel een opslagaccount als een Event Hub wordt geschreven.

# Settings needed for the new log profile
$logProfileName = "default"
$locations = (Get-AzLocation).Location
$locations += "global"
$subscriptionId = "<your Azure subscription Id>"
$resourceGroupName = "<resource group name your Event Hub belongs to>"
$eventHubNamespace = "<Event Hub namespace>"

# Build the service bus rule Id from the settings above
$serviceBusRuleId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.EventHub/namespaces/$eventHubNamespace/authorizationrules/RootManageSharedAccessKey"

# Build the Storage Account Id from the settings above
$storageAccountId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.Storage/storageAccounts/$storageAccountName"

Add-AzLogProfile -Name $logProfileName -Location $locations -StorageAccountId  $storageAccountId -ServiceBusRuleId $serviceBusRuleId

Wijzigingen in de gegevensstructuur

De ervaring activiteitenlogboeken exporteren verzendt dezelfde gegevens als de verouderde methode die wordt gebruikt om het activiteitenlogboek te verzenden met enkele wijzigingen in de structuur van de AzureActivity tabel.

De kolommen in de volgende tabel zijn afgeschaft in het bijgewerkte schema. Ze bestaan nog steeds in AzureActivity, maar ze hebben geen gegevens. De vervangingen voor deze kolommen zijn niet nieuw, maar bevatten dezelfde gegevens als de afgeschafte kolom. Ze hebben een andere indeling, dus mogelijk moet u logboekquery's wijzigen die ze gebruiken.

JSON voor activiteitenlogboek Log Analytics-kolomnaam
(ouder afgeschaft)
Nieuwe Log Analytics-kolomnaam Opmerkingen
category Categorie CategoryValue
status

Waarden zijn geslaagd, starten, accepteren, mislukken
ActivityStatus

Waarden hetzelfde als JSON
ActivityStatusValue

De waarden zijn gewijzigd in geslaagd, gestart, geaccepteerd, mislukt
De geldige waarden worden gewijzigd zoals wordt weergegeven.
subStatus ActivitySubstatus ActivitySubstatusValue
operationName OperationName OperationNameValue REST API lokaliseert de waarde van de bewerkingsnaam. In de Log Analytics-gebruikersinterface wordt altijd Engels weergegeven.
resourceProviderName ResourceProvider ResourceProviderValue

Belangrijk

In sommige gevallen zijn de waarden in deze kolommen mogelijk hoofdletters. Als u een query hebt die deze kolommen bevat, gebruikt u de operator =~ om een niet-hoofdlettergevoelige vergelijking uit te voeren.

De volgende kolommen zijn toegevoegd aan AzureActivity het bijgewerkte schema:

  • Authorization_d
  • Claims_d
  • Properties_d

Volgende stappen

Meer informatie over: