Odeslání dat protokolu aktivit služby Azure Monitor

Protokol aktivit služby Azure Monitor je protokol platformy, který poskytuje přehled o událostech na úrovni předplatného. Protokol aktivit obsahuje například informace o úpravách prostředků nebo spouštění virtuálních počítačů. Protokol aktivit můžete zobrazit na webu Azure Portal, případně můžete načíst položky pomocí PowerShellu a rozhraní Azure CLI. Tento článek obsahuje informace o tom, jak zobrazit protokol aktivit a poslat ho do různých cílů.

Pokud chcete získat další funkce, vytvořte nastavení diagnostiky pro odesílání protokolu aktivit do jednoho nebo více těchto umístění z následujících důvodů:

  • Odešlete do protokolů služby Azure Monitor pro složitější dotazování a upozorňování a delší dobu uchovávání až dvanáct let.
  • Odeslání do služby Azure Event Hubs k předání mimo Azure
  • Odeslání do Azure Storage za účelem levnějšího dlouhodobého archivace

Podrobnosti o tom, jak vytvořit nastavení diagnostiky, najdete v tématu Vytvoření nastavení diagnostiky pro odesílání protokolů platformy a metrik do různých cílů.

Poznámka:

  • Položky v protokolu aktivit jsou generovány systémem a nelze je změnit ani odstranit.
  • Položky v protokolu aktivit představují změny řídicí roviny, jako je restartování virtuálního počítače, všechny nesouvisející položky by se měly zapisovat do protokolů prostředků Azure.
  • Položky v protokolu aktivit jsou obvykle výsledkem změn (operace vytvoření, aktualizace nebo odstranění) nebo akce, která byla zahájena. Operace zaměřené na čtení podrobností o prostředku se obvykle nezaznamenají.

Odeslání do pracovního prostoru služby Log Analytics

Odešlete protokol aktivit do pracovního prostoru služby Log Analytics, abyste povolili funkci protokolů služby Azure Monitor, kde:

  • Korelujte data protokolu aktivit s dalšími daty monitorování shromážděnými službou Azure Monitor.
  • Sloučení položek protokolu z několika předplatných a tenantů Azure do jednoho umístění pro účely analýzy
  • Pomocí dotazů protokolu můžete provádět komplexní analýzu a získat podrobné přehledy o položkách protokolu aktivit.
  • Pro složitější logiku upozorňování použijte upozornění prohledávání protokolu s položkami aktivit.
  • Ukládat položky protokolu aktivit po delší dobu, než je doba uchovávání protokolu aktivit.
  • Neúčtují se žádné poplatky za příjem dat ani uchovávání dat protokolu aktivit uložených v pracovním prostoru služby Log Analytics.
  • Výchozí doba uchovávání v Log Analytics je 90 dnů.

Výběrem možnosti Exportovat protokoly aktivit odešlete protokol aktivit do pracovního prostoru služby Log Analytics.

Screenshot that shows exporting activity logs.

Protokol aktivit můžete odeslat z libovolného předplatného do až pěti pracovních prostorů.

Data protokolu aktivit v pracovním prostoru služby Log Analytics jsou uložená v tabulce s názvem AzureActivity , kterou můžete načíst pomocí dotazu protokolu v Log Analytics. Struktura této tabulky se liší v závislosti na kategorii položky protokolu. Popis vlastností tabulky najdete v referenčních informacích k datům služby Azure Monitor.

Pokud chcete například zobrazit počet záznamů protokolu aktivit pro každou kategorii, použijte následující dotaz:

AzureActivity
| summarize count() by CategoryValue

Pokud chcete načíst všechny záznamy v kategorii správy, použijte následující dotaz:

AzureActivity
| where CategoryValue == "Administrative"

Důležité

V některých scénářích je možné, že hodnoty v polích AzureActivity můžou mít různá velikost velikostí od jiných ekvivalentních hodnot. Při dotazování na data v AzureActivity se starají o použití operátorů nerozlišující malá a velká písmena pro porovnání řetězců nebo použití skalární funkce k vynucení pole do jednotné velikosti písmen před jakýmkoli porovnáním. Například pomocí funkce tolower() u pole vynutíte, aby byla při porovnávání řetězců vždy malá písmena nebo operátor =~.

Odeslání do služby Azure Event Hubs

Odešlete protokol aktivit do služby Azure Event Hubs, aby se odesílaly položky mimo Azure, například do řešení SIEM třetí strany nebo jiných řešení pro analýzu protokolů. Události protokolu aktivit z center událostí se využívají ve formátu JSON s elementem records , který obsahuje záznamy v každé datové části. Schéma závisí na kategorii a je popsáno ve schématu událostí protokolu aktivit Azure.

Následující ukázková výstupní data pocházejí z center událostí pro protokol aktivit:

{
    "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"
            }
        }
    ]
}

Odeslání do Azure Storage

Pokud chcete uchovávat data protokolů déle než 90 dnů pro účely auditu, statické analýzy nebo zálohování, odešlete protokol aktivit do účtu Azure Storage. Pokud potřebujete zachovat události po dobu 90 dnů nebo méně, nemusíte archivovat účet úložiště. Události protokolu aktivit se uchovávají na platformě Azure po dobu 90 dnů.

Při odesílání protokolu aktivit do Azure se v účtu úložiště vytvoří kontejner úložiště, jakmile dojde k události. Objekty blob v kontejneru používají následující zásady vytváření názvů:

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

Konkrétní objekt blob může mít například podobný název:

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

Každý objekt blob PT1H.json obsahuje objekt JSON s událostmi ze souborů protokolu, které byly přijaty během hodiny zadané v adrese URL objektu blob. Během aktuální hodiny se události připojují k souboru PT1H.json při jejich přijetí bez ohledu na to, kdy byly vygenerovány. Minutová hodnota v adrese URL m=00 je vždy 00 vytvořená jako objekty blob za hodinu.

Každá událost je uložena v souboru PT1H.json s následujícím formátem. Tento formát používá společné schéma nejvyšší úrovně, ale pro každou kategorii je jinak jedinečné, jak je popsáno ve schématu protokolu aktivit.

{ "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"}}}

Další metody načítání událostí protokolu aktivit

K událostem protokolu aktivit můžete přistupovat také pomocí následujících metod:

Starší metody kolekce

Poznámka:

  • Řešení protokolů aktivit Azure se použilo k předávání protokolů aktivit do Azure Log Analytics. Toto řešení se vyřadí z 15. září 2026 a automaticky se převede na nastavení diagnostiky.

Pokud shromažďujete protokoly aktivit pomocí starší verze metody shromažďování, doporučujeme exportovat protokoly aktivit do pracovního prostoru služby Log Analytics a zakázat starší shromažďování pomocí zdrojů dat – rozhraní API pro odstranění následujícím způsobem:

  1. Vypsat všechny zdroje dat připojené k pracovnímu prostoru pomocí rozhraní Data Sources – List By Workspace API a filtrovat protokoly aktivit nastavením kind eq 'AzureActivityLog'.

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

  2. Zkopírujte název připojení, které chcete zakázat z odpovědi rozhraní API.

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

  3. Pomocí zdrojů dat – Odstranění rozhraní API zastavte shromažďování protokolů aktivit pro konkrétní prostředek.

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

Správa starších profilů protokolů

Profily protokolů jsou starší metodou pro odesílání protokolu aktivit do úložiště nebo centra událostí. Pokud používáte tuto metodu, zvažte přechod na nastavení diagnostiky, která poskytují lepší funkce a konzistenci s protokoly prostředků.

Pokud profil protokolu již existuje, musíte nejprve odebrat existující profil protokolu a pak vytvořit nový profil.

  1. Slouží Get-AzLogProfile k identifikaci, jestli existuje profil protokolu. Pokud profil protokolu existuje, poznamenejte si Name vlastnost.

  2. Slouží Remove-AzLogProfile k odebrání profilu protokolu pomocí hodnoty z Name vlastnosti.

    # For example, if the log profile name is 'default'
    Remove-AzLogProfile -Name "default"
    
  3. Slouží Add-AzLogProfile k vytvoření nového profilu protokolu:

    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
    
    Vlastnost Požadováno Popis
    Name Ano Název profilu protokolu.
    StorageAccountId No ID prostředku účtu úložiště, do kterého se má protokol aktivit uložit.
    serviceBusRuleId No ID pravidla služby Service Bus pro obor názvů služby Service Bus, ve kterém chcete mít vytvořené centra událostí. Tento řetězec má formát {service bus resource ID}/authorizationrules/{key name}.
    Umístění Ano Čárkami oddělený seznam oblastí, pro které chcete shromažďovat události protokolu aktivit.
    RetentionInDays Ano Počet dnů, po které se mají události uchovávat v účtu úložiště, od 1 do 365 Hodnota nula ukládá protokoly po neomezenou dobu.
    Kategorie No Čárkami oddělený seznam kategorií událostí, které se mají shromažďovat. Možné hodnoty jsou Zapisovat, Odstranit a Akce.

Ukázkový skript

Tento ukázkový skript PowerShellu vytvoří profil protokolu, který zapíše protokol aktivit do účtu úložiště i do centra událostí.

# 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

Změny struktury dat

Prostředí protokolu aktivit exportu odesílá stejná data jako starší metoda použitá k odeslání protokolu aktivit s některými změnami struktury AzureActivity tabulky.

Sloupce v následující tabulce jsou v aktualizovaném schématu zastaralé. Stále existují, AzureActivityale nemají žádná data. Nahrazení těchto sloupců není nové, ale obsahují stejná data jako zastaralý sloupec. Jsou v jiném formátu, takže možná budete muset upravit dotazy protokolu, které je používají.

JSON protokolu aktivit Název sloupce Log Analytics
(starší zastaralé)
Nový název sloupce Log Analytics Notes
category Kategorie CategoryValue
stav

Hodnoty jsou úspěch, spuštění, přijetí, selhání
ActivityStatus

Hodnoty stejné jako JSON
ActivityStatusValue

Změny hodnot na úspěšné, spuštěné, přijaté, neúspěšné
Platné hodnoty se změní, jak je znázorněno.
subStatus ActivitySubstatus ActivitySubstatusValue
operationName OperationName OperationNameValue Rozhraní REST API lokalizuje hodnotu názvu operace. Uživatelské rozhraní Log Analytics vždy zobrazuje angličtinu.
resourceProviderName ResourceProvider ResourceProviderValue

Důležité

V některých případech můžou být hodnoty v těchto sloupcích velkými písmeny. Pokud máte dotaz, který obsahuje tyto sloupce, použijte operátor =~ k porovnání nerozlišující malá a velká písmena.

Do aktualizovaného schématu byly přidány AzureActivity následující sloupce:

  • Authorization_d
  • Claims_d
  • Properties_d

Další kroky

Přečtěte si další informace: