Udostępnij za pośrednictwem


Wysyłanie dzienników zasobów platformy Azure do obszarów roboczych usługi Log Analytics, usługi Event Hubs lub usługi Azure Storage

Dzienniki zasobów platformy Azure to dzienniki platformy, które zapewniają wgląd w operacje wykonywane w zasobie platformy Azure. Zawartość dzienników zasobów jest inna dla każdego typu zasobu. Dzienniki zasobów nie są zbierane domyślnie. Aby zbierać dzienniki zasobów, należy włączyć i skonfigurować ustawienia diagnostyczne lub użyć reguł zbierania danych. Aby uzyskać więcej informacji na temat reguł zbierania danych, zobacz Reguły zbierania danych w usłudze Azure Monitor. W tym artykule opisano ustawienie diagnostyczne wymagane dla każdego zasobu platformy Azure do wysyłania dzienników zasobów do obszarów roboczych usługi Log Analytics, usługi Event Hubs lub usługi Azure Storage.

Wysyłanie do obszaru roboczego usługi Log Analytics

Wysyłanie dzienników zasobów do obszaru roboczego usługi Log Analytics w celu włączenia funkcji dzienników usługi Azure Monitor, gdzie można:

  • Korelowanie danych dziennika zasobów z innymi danymi monitorowania zbieranymi przez usługę Azure Monitor.
  • Skonsoliduj wpisy dziennika z wielu zasobów platformy Azure, subskrypcji i dzierżaw w jedną lokalizację na potrzeby analizy razem.
  • Użyj zapytań dzienników, aby przeprowadzić złożoną analizę i uzyskać szczegółowe informacje na temat danych dziennika.
  • Używaj alertów przeszukiwania dzienników z złożoną logiką alertów.

Utwórz ustawienie diagnostyczne służące do wysyłania dzienników zasobów do obszaru roboczego usługi Log Analytics. Te dane są przechowywane w tabelach zgodnie z opisem w temacie Struktura dzienników usługi Azure Monitor. Tabele używane przez dzienniki zasobów zależą od typu zasobu i typu kolekcji używanej przez zasób. Istnieją dwa typy trybów zbierania dla dzienników zasobów:

  • Diagnostyka platformy Azure: wszystkie dane są zapisywane w tabeli AzureDiagnostics .
  • Specyficzne dla zasobu: dane są zapisywane w poszczególnych tabelach dla każdej kategorii zasobu.

Specyficzne dla zasobu

W przypadku dzienników korzystających z trybu specyficznego dla zasobów poszczególne tabele w wybranym obszarze roboczym są tworzone dla każdej kategorii dziennika wybranej w ustawieniu diagnostycznym. Dzienniki specyficzne dla zasobów mają następujące zalety dotyczące dzienników diagnostycznych platformy Azure:

  • Ułatwia pracę z danymi w zapytaniach dzienników.
  • Zapewnia lepszą możliwość odnajdywania schematów i ich struktury.
  • Poprawia wydajność między opóźnieniami pozyskiwania i czasem wykonywania zapytań.
  • Zapewnia możliwość udzielania praw kontroli dostępu na podstawie ról na platformie Azure w określonej tabeli.

Aby uzyskać opis dzienników i tabel specyficznych dla zasobów, zobacz Obsługiwane kategorie dzienników zasobów dla usługi Azure Monitor

Tryb diagnostyki platformy Azure

W trybie diagnostyki platformy Azure wszystkie dane z dowolnego ustawienia diagnostycznego są zbierane w tabeli AzureDiagnostics . Ta starsza metoda jest obecnie używana przez mniejszość usług platformy Azure. Ponieważ wiele typów zasobów wysyła dane do tej samej tabeli, jego schemat jest nadzbiorem schematów wszystkich zbieranych typów danych. Aby uzyskać szczegółowe informacje na temat struktury tej tabeli i sposobu jej działania z tą potencjalnie dużą liczbą kolumn, zobacz AzureDiagnostics reference (Dokumentacja narzędzia AzureDiagnostics).

Tabela AzureDiagnostics zawiera identyfikator resourceId zasobu, który wygenerował dziennik, kategorię dziennika i czas wygenerowania dziennika, a także właściwości specyficzne dla zasobu.

Zrzut ekranu przedstawiający tabelę AzureDiagnostics w obszarze roboczym usługi Log Analytics.

Wybieranie trybu zbierania

Większość zasobów platformy Azure zapisuje dane w obszarze roboczym w trybie diagnostycznym platformy Azure lub specyficznym dla zasobów bez możliwości wyboru. Aby uzyskać więcej informacji, zobacz Typowe schematy specyficzne dla usługi dla dzienników zasobów platformy Azure.

Wszystkie usługi platformy Azure w końcu będą używać trybu specyficznego dla zasobu. W ramach tego przejścia niektóre zasoby umożliwiają wybranie trybu w ustawieniu diagnostycznym. Określ tryb specyficzny dla zasobów dla wszystkich nowych ustawień diagnostycznych, ponieważ ten tryb ułatwia zarządzanie danymi. Może to również pomóc uniknąć złożonych migracji później.

Zrzut ekranu przedstawiający selektor trybu ustawień diagnostycznych.

Istniejące ustawienie diagnostyczne można zmodyfikować w trybie specyficznym dla zasobu. W takim przypadku dane, które zostały już zebrane, pozostają w AzureDiagnostics tabeli, dopóki nie zostaną usunięte zgodnie z ustawieniem przechowywania dla obszaru roboczego. Nowe dane są zbierane w dedykowanej tabeli. Użyj operatora unii, aby wykonywać zapytania dotyczące danych w obu tabelach.

Kontynuuj oglądanie bloga usługi Azure Updates pod kątem anonsów dotyczących usług platformy Azure, które obsługują tryb specyficzny dla zasobów.

Wysyłanie do usługi Azure Event Hubs

Wysyłanie dzienników zasobów do centrum zdarzeń w celu wysłania ich poza platformę Azure. Na przykład dzienniki zasobów mogą być wysyłane do rozwiązania SIEM innej firmy lub innych rozwiązań do analizy dzienników. Dzienniki zasobów z centrów zdarzeń są używane w formacie JSON z elementem zawierającym records rekordy w każdym ładunku. Schemat zależy od typu zasobu zgodnie z opisem w artykule Common and service-specific schema for Azure resource logs (Schemat specyficzny dla usługi i typ usługi dla dzienników zasobów platformy Azure).

Następujące przykładowe dane wyjściowe pochodzą z usługi Azure Event Hubs dla dziennika zasobów:

{
    "records": [
        {
            "time": "2019-07-15T18:00:22.6235064Z",
            "workflowId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA",
            "resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/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": "AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E",
                    "resourceGroupName": "JohnKemTest",
                    "workflowId": "2222cccc-33dd-eeee-ff44-aaaaaa555555",
                    "workflowName": "JohnKemTestLA",
                    "runId": "08587330013509921957",
                    "location": "westus",
                    "actionName": "Send_email"
                },
                "correlation": {
                    "actionTrackingId": "3333dddd-44ee-ffff-aa55-bbbbbbbb6666",
                    "clientTrackingId": "08587330013509921958"
                }
            }
        },
        {
            "time": "2019-07-15T18:01:15.7532989Z",
            "workflowId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA",
            "resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/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": "AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E",
                    "resourceGroupName": "JohnKemTest",
                    "workflowId": "dddd3333-ee44-5555-66ff-777777aaaaaa",
                    "workflowName": "JohnKemTestLA",
                    "runId": "08587330012106702630",
                    "location": "westus",
                    "actionName": "Send_email"
                },
                "correlation": {
                    "actionTrackingId": "ffff5555-aa66-7777-88bb-999999cccccc",
                    "clientTrackingId": "08587330012106702632"
                }
            }
        }
    ]
}

Wysyłanie do usługi Azure Storage

Wyślij dzienniki zasobów do usługi Azure Storage, aby zachować je do archiwizacji. Po utworzeniu ustawienia diagnostycznego kontener magazynu zostanie utworzony na koncie magazynu zaraz po wystąpieniu zdarzenia w jednej z kategorii dzienników z włączoną obsługą.

Uwaga

Alternatywą do archiwizacji jest wysłanie dziennika zasobów do tabeli w obszarze roboczym usługi Log Analytics z niskim kosztem i długoterminowym przechowywaniem.

Obiekty blob w kontenerze używają następującej konwencji nazewnictwa:

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

Obiekt blob dla sieciowej grupy zabezpieczeń może mieć nazwę podobną do następującej:

insights-logs-networksecuritygrouprulecounter/resourceId=/SUBSCRIPTIONS/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1/RESOURCEGROUPS/TESTRESOURCEGROUP/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUP/TESTNSG/y=2016/m=08/d=22/h=18/m=00/PT1H.json

Każdy obiekt blob PT1H.json zawiera obiekt JSON ze zdarzeniami z plików dziennika, które zostały odebrane w ciągu godziny określonej w adresie URL obiektu blob. W ciągu obecnej godziny zdarzenia są dołączane do pliku PT1H.json podczas ich odbierania, niezależnie od tego, kiedy zostały wygenerowane. Wartość minuty w adresie URL jest zawsze 00 tak, m=00 jak obiekty blob są tworzone na godzinę.

W pliku PT1H.json każde zdarzenie jest przechowywane w następującym formacie. Używa on wspólnego schematu najwyższego poziomu, ale jest unikatowy dla każdej usługi platformy Azure, zgodnie z opisem w schemacie dzienników zasobów.

Uwaga

Dzienniki są zapisywane w obiektach blob na podstawie czasu odebrania dziennika, niezależnie od czasu wygenerowania. Oznacza to, że dany obiekt blob może zawierać dane dziennika, które znajdują się poza godziną określoną w adresie URL obiektu blob. Jeśli źródło danych, takie jak Usługa Application Insights, obsługuje przekazywanie nieaktualnych danych telemetrycznych obiektu blob może zawierać dane z poprzednich 48 godzin.
Na początku nowej godziny istnieje możliwość, że istniejące dzienniki są nadal zapisywane w obiekcie blob poprzedniej godziny, podczas gdy nowe dzienniki są zapisywane w obiekcie blob nowej godziny.

{"time": "2016-07-01T00:00:37.2040000Z","systemId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1","category": "NetworkSecurityGroupRuleCounter","resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testresourcegroup/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/default-allow-rdp","direction": "In","type": "allow","matchedConnections": 1988}}

Integracje partnerów w usłudze Azure Monitor

Dzienniki zasobów można również wysyłać do rozwiązań partnerskich, które są w pełni zintegrowane z platformą Azure. Aby uzyskać listę tych rozwiązań i szczegółowe informacje na temat ich konfigurowania, zobacz Integracje partnerów usługi Azure Monitor.

Następne kroki