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 služby Azure a typu prostředku. Protokoly prostředků se ve výchozím nastavení neshromažďují. Tento článek popisuje nastavení diagnostiky vyžadované 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

Odešlete protokoly prostředků do pracovního prostoru služby Log Analytics, abyste povolili funkce protokolů služby Azure Monitor, kde můžete:

  • Korelace dat protokolu prostředků s dalšími daty monitorování shromažďovanými službou Azure Monitor
  • Konsolidovat položky protokolu z několika prostředků, předplatných a tenantů Azure do jednoho umístění pro účely společné analýzy
  • Pomocí dotazů na protokol můžete provádět komplexní 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 se ukládají v tabulkách, jak je popsáno v tématu Struktura protokolů služby Azure Monitor. Tabulky používané protokoly prostředků závisí na typu kolekce, kterou prostředek používá:

  • Diagnostika Azure: Všechna data se zapíšou do tabulky AzureDiagnostics .
  • Specifické pro prostředek: Data se zapisují do jednotlivých tabulek pro každou kategorii zdroje.

Specifické pro prostředek

V tomto režimu se pro každou kategorii vybranou v nastavení diagnostiky vytvoří jednotlivé tabulky ve vybraném pracovním prostoru. 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 napříč latencí příjmu dat a časy dotazů.
  • Poskytuje možnost udělovat oprávnění řízení přístupu na základě role v Azure ke konkrétní tabulce.

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

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

  • Tabulka Service1AuditLogs

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

    Poskytovatel prostředků Kategorie D E F
    Služba 1 Protokoly chyb Q1 w1 e1
    Služba 1 Protokoly chyb Dotaz č. 2 w2 e2
    ...
  • Tabulka Service2AuditLogs

    Poskytovatel prostředků Kategorie G H I
    Služba 2 AuditLogs j1 k1 l1
    Služba 2 AuditLogs j3 k3 l3
    ...

Režim diagnostiky Azure

V tomto režimu se všechna data z libovolného nastavení diagnostiky shromažďují v tabulce AzureDiagnostics . Tuto starší metodu dnes používá většina služeb Azure. Vzhledem k tomu, že více typů prostředků odesílá data do stejné tabulky, je její schéma nadmnožinou schémat všech různých shromažďovaných datových typů. 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 ve stejném pracovním prostoru shromažďují nastavení diagnostiky 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. Služba 1 AuditLogs x1 y1 Z1
Microsoft. Služba 1 Protokoly chyb Q1 v1 e1
Microsoft. Služba 2 AuditLogs j1 k1 l1
Microsoft. Služba 1 Protokoly chyb Otázka č. 2 w2 e2
Microsoft. Služba 2 AuditLogs J3 k3 l3
Microsoft. Služba 1 AuditLogs x5 y5 z5
...

Výběr režimu shromažďování

Většina prostředků Azure zapisuje data do pracovního prostoru buď v diagnostice Azure , nebo v režimu specifickém pro prostředek , aniž byste měli na výběr. Další informace najdete v tématu Běžná schémata a schémata specifická pro službu pro protokoly prostředků Azure.

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

Snímek obrazovky znázorňující volič režimu nastavení diagnostiky

Poznámka

Příklad, který nastavuje režim shromažďování pomocí šablony Azure Resource Manager, najdete v tématu ukázky šablon Resource Manager pro nastavení diagnostiky ve službě Azure Monitor.

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

Nadále sledujte blog azure Aktualizace, kde najdete oznámení 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í, abyste je mohli odeslat mimo Azure. Protokoly prostředků se můžou například odesílat do řešení SIEM třetí strany nebo jiným řešením log analytics. Protokoly prostředků 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 typu prostředku, jak je popsáno v tématu Běžné schéma a schéma specifické pro službu pro protokoly prostředků Azure.

Následující ukázková výstupní data pocházejí z Azure Event Hubs pro protokol 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, aby se zachovaly pro archivaci. Po vytvoření nastavení diagnostiky se v účtu úložiště vytvoří kontejner úložiště, jakmile dojde k události v některé z povolených kategorií protokolu.

Poznámka

Alternativní strategií archivace je odeslání protokolu prostředků do pracovního prostoru služby Log Analytics se zásadou archivace.

Objekty blob v rámci 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 pro skupinu zabezpečení sítě může mít název podobný tomuto 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 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. Hodnota minuty v adrese URL je vždy00, m=00 protože objekty blob se vytvářejí každou hodinu.

V souboru PT1H.json je každá událost uložená 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 v tématu Schéma protokolů prostředků.

Poznámka

Protokoly se do objektů blob zapisují na základě času přijetí protokolu bez ohledu na čas, kdy se vygeneroval. To znamená, že daný objekt blob může obsahovat data protokolu, která jsou mimo hodinu uvedenou v adrese URL objektu blob. Pokud zdroj dat, jako je Application Insights, podporuje nahrávání zastaralé telemetrie, může objekt blob obsahovat data z předchozích 48 hodin.
Na začátku nové hodiny je možné, že se existující protokoly stále zapisují do objektu blob předchozí hodiny, zatímco nové protokoly se zapisují do objektu blob nové hodiny.

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