Protokoly prostředků Azure

Protokoly prostředků Azure jsou protokoly platformy , které poskytují přehled o operacích provedených v rámci prostředku Azure. Obsah protokolů prostředků se liší podle typu služby a prostředku Azure. Protokoly prostředků se ve výchozím nastavení neshromažďují. Tento článek popisuje nastavení diagnostiky potřebné pro každý prostředek Azure k odesílání protokolů prostředků do různých cílů.

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

Odesílání protokolů prostředků do pracovního prostoru Služby Log Analytics pro povolení funkcí protokolů služby Azure Monitor, kde můžete:

  • Korelujte data protokolu prostředků s dalšími daty monitorování shromážděnými službou Azure Monitor.
  • Sloučení položek protokolu z několika prostředků Azure, předplatných a tenantů do jednoho umístění pro účely analýzy.
  • Pomocí dotazů protokolu můžete provádět složitou analýzu a získávat podrobné přehledy o datech protokolů.
  • Používejte upozornění protokolu se složitou logikou upozorňování.

Vytvořte nastavení diagnostiky pro odesílání protokolů prostředků do pracovního prostoru Služby Log Analytics. Tato data jsou uložená v tabulkách, jak je popsáno ve struktuře protokolů služby Azure Monitor. Tabulky používané protokoly prostředků závisí na tom, jaký typ kolekce prostředek používá:

  • Diagnostika Azure: Všechna data se zapisuje do tabulky AzureDiagnostics .
  • Konkrétní zdroj: Data se zapisují do jednotlivých tabulek pro každou kategorii prostředku.

Specifické pro prostředky

V tomto režimu se jednotlivé tabulky ve vybraném pracovním prostoru vytvoří pro každou kategorii vybranou v nastavení diagnostiky. Tuto metodu doporučujeme, protože:

  • Usnadňuje práci s daty v dotazech protokolu.
  • Poskytuje lepší zjistitelnost schémat a jejich struktury.
  • Zlepšuje výkon latence příjmu dat a doby dotazů.
  • Poskytuje možnost udělit oprávnění řízení přístupu na základě role Azure pro konkrétní tabulku.

Všechny služby Azure se nakonec migrují do režimu specifického pro prostředky.

Předchozí příklad vytvoří tři tabulky:

  • Tabulka Service1AuditLogs

    Poskytovatel prostředků Kategorie A B C
    Service1 AuditLogs x1 y1 Z1
    Service1 AuditLogs x5 y5 z5
    ...
  • Tabulka Service1ErrorLogs

    Poskytovatel prostředků Kategorie D E F
    Service1 Protokoly chyb Q1 w1 e1
    Service1 Protokoly chyb q2 w2 e2
    ...
  • Tabulka Service2AuditLogs

    Poskytovatel prostředků Kategorie G H I
    Service2 AuditLogs j1 k1 l1
    Service2 AuditLogs j3 k3 l3
    ...

Režim diagnostiky Azure

V tomto režimu se všechna data z jakéhokoli nastavení diagnostiky shromažďují v tabulce AzureDiagnostics . Tato starší metoda se dnes používá u většiny služeb Azure. Vzhledem k tomu, že více typů prostředků odesílá data do stejné tabulky, je jeho schéma nadmnožinou schémat všech různých datových typů, které se shromažďují. Podrobnosti o struktuře této tabulky a o tom, jak funguje s tímto potenciálně velkým počtem sloupců, najdete v referenčních informacích k AzureDiagnostics.

Představte si příklad, kdy se nastavení diagnostiky shromažďuje ve stejném pracovním prostoru pro následující datové typy:

  • Protokoly auditu služby 1 mají schéma, které se skládá ze sloupců A, B a C
  • Protokoly chyb služby 1 mají schéma, které se skládá ze sloupců D, E a F
  • Protokoly auditu služby 2 mají schéma, které se skládá ze sloupců G, H a I

Tabulka AzureDiagnostics vypadá jako v tomto příkladu:

ResourceProvider Kategorie A B C D E F G H I
Microsoft.Service1 AuditLogs x1 y1 Z1
Microsoft.Service1 Protokoly chyb Q1 w1 e1
Microsoft.Service2 AuditLogs j1 k1 l1
Microsoft.Service1 Protokoly chyb q2 w2 e2
Microsoft.Service2 AuditLogs j3 k3 l3
Microsoft.Service1 AuditLogs x5 y5 z5
...

Výběr režimu kolekce

Většina prostředků Azure zapisuje data do pracovního prostoru v diagnostickém režimu Azure nebo v režimu specifickém pro prostředky , aniž byste si museli vybrat. Další informace najdete v tématu Běžná schémata a schémata specifická pro prostředky Azure.

Všechny služby Azure nakonec používají režim specifický pro prostředky. V rámci tohoto přechodu vám některé prostředky umožňují vybrat režim v nastavení diagnostiky. Zadejte režim specifický pro prostředky pro všechna nová nastavení diagnostiky, protože tento režim usnadňuje správu dat. Může vám také pomoct vyhnout se složitým migracím později.

Screenshot that shows the Diagnostics settings mode selector.

Poznámka

Příklad, který nastaví režim kolekce pomocí šablony Azure Resource Manager, najdete v Resource Manager ukázkách šablon pro nastavení diagnostiky ve službě Azure Monitor.

Existující nastavení diagnostiky můžete upravit na režim specifický pro prostředky. V tomto případě data, která už byla shromážděna, zůstanou v AzureDiagnostics tabulce, dokud nebudou odebrána podle nastavení uchovávání informací pro pracovní prostor. Nová data se shromažďují ve vyhrazené tabulce. Pomocí operátoru sjednocení můžete dotazovat data v obou tabulkách.

Pokračujte v blogu Azure Aktualizace o oznámeních o službách Azure, které podporují režim specifický pro prostředky.

Odeslat Azure Event Hubs

Odešlete protokoly prostředků do centra událostí a odešlete je mimo Azure. Například protokoly prostředků se můžou odesílat do řešení SIEM třetích stran nebo do jiných řešení pro analýzu protokolů. Protokoly prostředků z centra 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 typu prostředku, jak je popsáno v schématu specifickém pro common a service-specific pro protokoly prostředků Azure.

Následující ukázková výstupní data pocházejí z Azure Event Hubs protokolu prostředků:

{
    "records": [
        {
            "time": "2019-07-15T18:00:22.6235064Z",
            "workflowId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA",
            "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA/RUNS/08587330013509921957/ACTIONS/SEND_EMAIL",
            "category": "WorkflowRuntime",
            "level": "Error",
            "operationName": "Microsoft.Logic/workflows/workflowActionCompleted",
            "properties": {
                "$schema": "2016-04-01-preview",
                "startTime": "2016-07-15T17:58:55.048482Z",
                "endTime": "2016-07-15T18:00:22.4109204Z",
                "status": "Failed",
                "code": "BadGateway",
                "resource": {
                    "subscriptionId": "00000000-0000-0000-0000-000000000000",
                    "resourceGroupName": "JohnKemTest",
                    "workflowId": "243aac67fe904cf195d4a28297803785",
                    "workflowName": "JohnKemTestLA",
                    "runId": "08587330013509921957",
                    "location": "westus",
                    "actionName": "Send_email"
                },
                "correlation": {
                    "actionTrackingId": "29a9862f-969b-4c70-90c4-dfbdc814e413",
                    "clientTrackingId": "08587330013509921958"
                }
            }
        },
        {
            "time": "2019-07-15T18:01:15.7532989Z",
            "workflowId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA",
            "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA/RUNS/08587330012106702630/ACTIONS/SEND_EMAIL",
            "category": "WorkflowRuntime",
            "level": "Information",
            "operationName": "Microsoft.Logic/workflows/workflowActionStarted",
            "properties": {
                "$schema": "2016-04-01-preview",
                "startTime": "2016-07-15T18:01:15.5828115Z",
                "status": "Running",
                "resource": {
                    "subscriptionId": "00000000-0000-0000-0000-000000000000",
                    "resourceGroupName": "JohnKemTest",
                    "workflowId": "243aac67fe904cf195d4a28297803785",
                    "workflowName": "JohnKemTestLA",
                    "runId": "08587330012106702630",
                    "location": "westus",
                    "actionName": "Send_email"
                },
                "correlation": {
                    "actionTrackingId": "042fb72c-7bd4-439e-89eb-3cf4409d429e",
                    "clientTrackingId": "08587330012106702632"
                }
            }
        }
    ]
}

Odeslání do Azure Storage

Odešlete protokoly prostředků do služby Azure Storage, abyste je zachovali pro archivaci. Po vytvoření nastavení diagnostiky se kontejner úložiště vytvoří v účtu úložiště, jakmile dojde k události v jedné z povolených kategorií protokolů.

Poznámka

Alternativní strategií archivace je odeslání protokolu prostředků do pracovního prostoru Služby Log Analytics pomocí zásad archivace.

Objekty blob v kontejneru používají následující zásady vytváření názvů:

insights-logs-{log category name}/resourceId=/SUBSCRIPTIONS/{subscription ID}/RESOURCEGROUPS/{resource group name}/PROVIDERS/{resource provider name}/{resource type}/{resource name}/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

Objekt blob skupiny zabezpečení sítě může mít podobný název jako v tomto příkladu:

insights-logs-networksecuritygrouprulecounter/resourceId=/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/TESTRESOURCEGROUP/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUP/TESTNSG/y=2016/m=08/d=22/h=18/m=00/PT1H.json

Každý objekt blob PT1H.json obsahuje objekt blob JSON událostí, ke kterým došlo během hodiny zadané v adrese URL objektu blob, například h=12. Během aktuální hodiny se události připojují do souboru PT1H.json, když k nim dojde. Minutová hodnota (m=00) je vždy 00, protože události protokolu prostředků jsou rozdělené do jednotlivých objektů blob za hodinu.

V souboru PT1H.json se každá událost uloží v následujícím formátu. Používá společné schéma nejvyšší úrovně, ale je jedinečné pro každou službu Azure, jak je popsáno ve schématu protokolů prostředků.

Poznámka

Protokoly se zapisují do objektu blob, který je relevantní pro čas vygenerovaný protokol, nikoli čas přijetí. Takže na konci hodiny můžou přijímat nové zápisy jak předchozí hodina, tak i aktuální hodinové objekty blob.

{"time": "2016-07-01T00:00:37.2040000Z","systemId": "46cdbb41-cb9c-4f3d-a5b4-1d458d827ff1","category": "NetworkSecurityGroupRuleCounter","resourceId": "/SUBSCRIPTIONS/s1id1234-5679-0123-4567-890123456789/RESOURCEGROUPS/TESTRESOURCEGROUP/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/TESTNSG","operationName": "NetworkSecurityGroupCounters","properties": {"vnetResourceGuid": "{12345678-9012-3456-7890-123456789012}","subnetPrefix": "10.3.0.0/24","macAddress": "000123456789","ruleName": "/subscriptions/ s1id1234-5679-0123-4567-890123456789/resourceGroups/testresourcegroup/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/default-allow-rdp","direction": "In","type": "allow","matchedConnections": 1988}}

Integrace partnerů ve službě Azure Monitor

Protokoly prostředků je také možné odesílat do partnerských řešení, která jsou plně integrovaná do Azure. Seznam těchto řešení a podrobnosti o tom, jak je nakonfigurovat, najdete v tématu Integrace partnerů služby Azure Monitor.

Další kroky