Włączanie dzienników diagnostycznych dla zasobów usługi Event Grid

Ten artykuł zawiera instrukcje krok po kroku dotyczące włączania ustawień diagnostycznych dla zasobów usługi Event Grid. Ustawienia diagnostyczne rejestrują informacje o niepowodzeniach publikowania i dostarczania, dzięki czemu możesz diagnozować i rozwiązywać problemy z zasobami Event Grid. Poniższa tabela przedstawia dostępne ustawienia dla różnych typów zasobów Event Grid: tematy niestandardowe, tematy systemowe oraz domeny.

Ustawienie diagnostyczne Tematy usługi Event Grid Tematy dotyczące systemu usługi Event Grid Domeny zdarzeń Przestrzenie nazw partnerów usługi Event Grid
DeliveryFailures Tak Tak Tak Nie.
Błędy publikowania Tak Nie. Tak Tak
DataPlaneRequests Tak Nie. Tak Tak

Ważne

Schematy błędów dostarczania, błędów publikowania i żądań płaszczyzny danych opisano w artykule Dzienniki diagnostyczne.

Wymagania wstępne

  • Zasób aprowizowanej usługi Event Grid
  • Skonfigurowana lokalizacja docelowa do przechwytywania dzienników diagnostycznych:
    • obszar roboczy usługi Log Analytics
    • Konto magazynu
    • Centra zdarzeń
    • Rozwiązanie partnerskie

Włączanie dzienników diagnostycznych dla tematów i domen usługi Event Grid

Uwaga

Poniższa procedura zawiera instrukcje krok po kroku dotyczące włączania dzienników diagnostycznych dla tematów. Kroki włączania logów diagnostycznych dla domeny są podobne. W kroku 2 przejdź do domeny usługi Event Grid w witrynie Azure Portal.

  1. Zaloguj się w witrynie Azure Portal.

  2. Przejdź do tematu usługi Event Grid, dla którego chcesz włączyć ustawienia dziennika diagnostycznego.

    1. Na pasku wyszukiwania u góry wyszukaj tematy usługi Event Grid.

      Zrzut ekranu przedstawiający witrynę Azure Portal z tematami usługi Event Grid w polu wyszukiwania.

    2. Wybierz temat z listy, dla której chcesz skonfigurować ustawienia diagnostyczne.

  3. Wybierz pozycję Ustawienia diagnostyczne w obszarze Monitorowanie w menu po lewej stronie.

  4. Na stronie Ustawienia diagnostyczne wybierz pozycję Dodaj ustawienie diagnostyczne.

    Zrzut ekranu pokazujący stronę ustawień diagnostycznych dla niestandardowego tematu.

  5. Wpisz nazwę ustawienia diagnostycznego.

  6. Wybierz opcję allLogs w sekcji Dzienniki.

    Zrzut ekranu przedstawiający stronę ustawień diagnostycznych z zaznaczoną opcją Wszystkie dzienniki.

  7. Włącz co najmniej jedno miejsce docelowe przechwytywania dzienników, a następnie skonfiguruj je, wybierając wcześniej utworzony zasób przechwytywania.

    • Jeśli wybierzesz pozycję Wyślij do usługi Log Analytics, wybierz obszar roboczy usługi Log Analytics.

      Zrzut ekranu przedstawiający stronę Ustawienia diagnostyczne z wybraną pozycją Wyślij do usługi Log Analytics.

    • Jeśli wybierzesz pozycję Archiwizuj na koncie magazynu, wybierz pozycję Konto magazynu — Konfiguruj, a następnie wybierz konto magazynu w subskrypcji platformy Azure.

      Zrzut ekranu przedstawiający stronę ustawień diagnostycznych z zaznaczoną opcją archiwizacji do konta magazynu platformy Azure oraz z wybranym kontem magazynu.

    • Jeśli wybierzesz pozycję Przesyłaj strumieniowo do centrum zdarzeń, wybierz pozycję Centrum zdarzeń — Konfiguruj, a następnie wybierz przestrzeń nazw usługi Event Hubs, centrum zdarzeń i zasadę dostępu.

      Zrzut ekranu przedstawiający stronę Ustawienia diagnostyczne z zaznaczoną opcją Przesyłanie strumieniowe do centrum zdarzeń.

  8. Wybierz pozycję Zapisz. Następnie zaznacz X w prawym górnym rogu, aby zamknąć stronę.

  9. Wracając na stronę ustawień diagnostycznych , sprawdź, czy widzisz nowy wpis w tabeli ustawień diagnostycznych .

    Zrzut ekranu pokazujący stronę ustawień diagnostycznych z nowym wpisem wyróżnionym w tabeli ustawień diagnostycznych.

Możesz również włączyć zbieranie wszystkich metryk dla tematu.

Włącz dzienniki diagnostyczne dla tematów systemowych usługi Event Grid

  1. Zaloguj się w witrynie Azure Portal.

  2. Wejdź do tematu systemowego, gdzie chcesz włączyć ustawienia logów diagnostycznych.

    1. Na pasku wyszukiwania u góry wyszukaj tematy systemowe usługi Event Grid.

      Zrzut ekranu pokazujący portal Azure z tematami systemu Event Grid w polu wyszukiwania.

    2. Wybierz temat systemu , w którym chcesz skonfigurować ustawienia diagnostyczne.

      Zrzut ekranu pokazujący listę tematów systemu Event Grid.

  3. Wybierz pozycję Ustawienia diagnostyczne w obszarze Monitorowanie w menu po lewej stronie, a następnie wybierz pozycję Dodaj ustawienie diagnostyczne.

    Zrzut ekranu pokazujący stronę ustawień diagnostycznych tematu systemu z przyciskiem Dodaj ustawienia diagnostycznego.

  4. Wpisz nazwę ustawienia diagnostycznego.

  5. Wybierz opcję allLogs w sekcji Dzienniki.

    Zrzut ekranu przedstawiający stronę Ustawienia diagnostyczne dla tematu systemowego z zaznaczoną opcją Wszystkie dzienniki.

  6. Włącz co najmniej jedno miejsce docelowe przechwytywania dzienników, a następnie skonfiguruj je, wybierając wcześniej utworzony zasób przechwytywania.

    • Jeśli wybierzesz pozycję Wyślij do usługi Log Analytics, wybierz obszar roboczy usługi Log Analytics.

      Zrzut ekranu przedstawiający stronę ustawień diagnostycznych tematu systemowego z wybraną opcją Wyślij do usługi Log Analytics.

    • Jeśli wybierzesz pozycję Archiwizuj na koncie magazynu, wybierz pozycję Konto magazynu — Konfiguruj, a następnie wybierz konto magazynu w swojej subskrypcji platformy Azure.

      Zrzut ekranu pokazujący stronę ustawień diagnostycznych tematu systemu z wybranym Archiwum na konto pamięci.

    • Jeśli wybierzesz pozycję Przesyłaj strumieniowo do centrum zdarzeń, wybierz pozycję Centrum zdarzeń — Konfiguruj, a następnie wybierz przestrzeń nazw usługi Event Hubs, centrum zdarzeń i zasady dostępu.

      Zrzut ekranu przedstawiający stronę Ustawienia diagnostyczne tematu systemowego z wybraną opcją Przesyłanie strumieniowe do centrum zdarzeń.

  7. Wybierz pozycję Zapisz. Następnie zaznacz X w prawym górnym rogu, aby zamknąć stronę.

  8. Wracając na stronę ustawień diagnostycznych , sprawdź, czy widzisz nowy wpis w tabeli ustawień diagnostycznych .

    Zrzut ekranu pokazujący stronę ustawień diagnostycznych tematu systemu z nowym wpisem w tabeli.

Możesz także włączyć zbieranie wszystkich metryk dla tematu systemu.

Zrzut ekranu pokazujący stronę ustawień diagnostycznych tematu systemowego ze wszystkimi wybranymi metrykami.

Wyświetlanie dzienników diagnostycznych w usłudze Azure Storage

  1. Gdy włączysz konto pamięci jako miejsce przechwytywania, Event Grid zaczyna generować logi diagnostyczne. Widzisz nowe kontenery nazwane insights-logs-deliveryfailures oraz insights-logs-publishfailures w koncie pamięci masowej.

    Zrzut ekranu pokazuje kontenery konta pamięci do logów diagnostycznych.

  2. Przechodząc przez jeden z kontenerów, trafiasz na plamę w formacie JSON. Plik zawiera wpisy dziennika dotyczące albo błędu dostarczenia, albo błędu publikowania. Ścieżka nawigacji reprezentuje ResourceId tematu Siatki Zdarzeń oraz znacznik czasu (poziom minuty), w którym Siatka Zdarzeń emitowała wpisy w logach. Plik blob/JSON, który możesz pobrać, podąża za schematem opisanym w następnej sekcji.

    Zrzut ekranu, na którym widać plik JSON blob na koncie pamięci.

  3. W pliku JSON widzisz zawartość podobną do następującego przykładu:

    {
        "time": "2019-11-01T00:17:13.4389048Z",
        "resourceId": "/SUBSCRIPTIONS/SAMPLE-SUBSCRIPTION-ID /RESOURCEGROUPS/SAMPLE-RESOURCEGROUP-NAME/PROVIDERS/MICROSOFT.EVENTGRID/TOPICS/SAMPLE-TOPIC-NAME ",
        "eventSubscriptionName": "SAMPLEDESTINATION",
        "category": "DeliveryFailures",
        "operationName": "Deliver",
        "message": "Message:outcome=NotFound, latencyInMs=2635, id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx, systemId=xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, state=FilteredFailingDelivery, deliveryTime=11/1/2019 12:17:10 AM, deliveryCount=0, probationCount=0, deliverySchema=EventGridEvent, eventSubscriptionDeliverySchema=EventGridEvent, fields=InputEvent, EventSubscriptionId, DeliveryTime, State, Id, DeliverySchema, LastDeliveryAttemptTime, SystemId, fieldCount=, requestExpiration=1/1/0001 12:00:00 AM, delivered=False publishTime=11/1/2019 12:17:10 AM, eventTime=11/1/2019 12:17:09 AM, eventType=Type, deliveryTime=11/1/2019 12:17:10 AM, filteringState=FilteredWithRpc, inputSchema=EventGridEvent, publisher=SAMPLE-TOPIC-NAME.EASTUS-1.EVENTGRID.AZURE.NET, size=363, fields=Id, PublishTime, SerializedBody, EventType, Topic, Subject, FilteringHashCode, SystemId, Publisher, FilteringTopic, TopicCategory, DataVersion, MetadataVersion, InputSchema, EventTime, fieldCount=15, url=sb://sample-namespace.servicebus.windows.net/, deliveryResponse=NotFound: The messaging entity 'sb://sample-namespace.servicebus.windows.net/sample-eventhub' could not be found. TrackingId:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx_G14, SystemTracker:sample-namespace.servicebus.windows.net:sample-eventhub, Timestamp:2019-11-01T00:17:13, referenceId: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_G14:"
    }
    

Korzystanie z szablonu usługi Azure Resource Manager

Oto przykładowy szablon usługi Azure Resource Manager umożliwiający włączenie ustawień diagnostycznych dla tematu usługi Event Grid. Wdrażając ten przykładowy szablon, tworzy on następujące zasoby:

  • Temat usługi Event Grid
  • Obszar roboczy usługi Log Analytics

Następnie tworzy ustawienie diagnostyczne w temacie w celu wysyłania informacji diagnostycznych do obszaru roboczego usługi Log Analytics.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "topic_name": {
            "defaultValue": "spegrid0917topic",
            "type": "String"
        },
        "log_analytics_workspace_name": {
            "defaultValue": "splogaw0625",
            "type": "String"
        },
        "location": {
            "defaultValue": "eastus",
            "type": "String"
        },
        "sku": {
            "defaultValue": "Free",
            "type": "String"
        }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.EventGrid/topics",
            "apiVersion": "2020-10-15-preview",
            "name": "[parameters('topic_name')]",
            "location": "[parameters('location')]",
            "sku": {
                "name": "Basic"
            },
            "kind": "Azure",
            "identity": {
                "type": "None"
            },
            "properties": {
                "inputSchema": "EventGridSchema",
                "publicNetworkAccess": "Enabled"
            }
        },
        {
            "apiVersion": "2017-03-15-preview",
            "name": "[parameters('log_analytics_workspace_name')]",
            "location": "[parameters('location')]",
            "type": "Microsoft.OperationalInsights/workspaces",
            "properties": {
                "sku": {
                    "name": "[parameters('sku')]"
                }
            }
        },
        {
            "type": "Microsoft.EventGrid/topics/providers/diagnosticSettings",
            "apiVersion": "2017-05-01-preview",
            "name": "[concat(parameters('topic_name'), '/', 'Microsoft.Insights/', parameters('log_analytics_workspace_name'))]",
            "location": "[parameters('location')]",
            "dependsOn": [
                "[resourceId('Microsoft.EventGrid/topics', parameters('topic_name'))]",
                "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('log_analytics_workspace_name'))]"
            ],
            "properties": {
                "workspaceId": "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('log_analytics_workspace_name'))]",
                "metrics": [
                    {
                        "category": "AllMetrics",
                        "enabled": true
                    }
                ],
                "logs": [
                    {
                        "category": "DeliveryFailures",
                        "enabled": true
                    },
                    {
                        "category": "PublishFailures",
                        "enabled": true
                    }
                ]
            }
        }
    ]
}

Włącz dzienniki diagnostyczne dla śladów audytu

Event Grid może publikować ślady audytu dla operacji płaszczyzny danych. Aby włączyć tę funkcję, wybierz pozycję Inspekcja w sekcji Grupy kategorii lub wybierz pozycję DataPlaneRequests w sekcji Kategorie .

Użyj śledzenia audytu, aby upewnić się, że dostęp do danych jest dozwolony wyłącznie w celach autoryzowanych. Zbiera informacje o kontrolach bezpieczeństwa, takie jak nazwa zasobu, typ operacji, dostęp do sieci, poziom i region. Aby uzyskać więcej informacji o tym, jak włączyć ustawienie diagnostyczne, zobacz Włączenie logów diagnostycznych dla tematów i domen Event Grid.

Zrzut ekranu przedstawiający stronę ustawień diagnostycznych z zaznaczoną opcją Audit.

Ważne

Aby uzyskać więcej informacji na temat schematu DataPlaneRequests , zobacz Dzienniki diagnostyczne.

Następne kroki

Aby zapoznać się ze schematem dziennika i innymi informacjami koncepcyjnymi dotyczącymi dzienników diagnostycznych dla tematów lub domen, zobacz Dzienniki diagnostyczne.