Udostępnij za pośrednictwem


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. Te ustawienia umożliwiają przechwytywanie i wyświetlanie informacji diagnostycznych, dzięki czemu można rozwiązywać problemy z błędami. W poniższej tabeli przedstawiono ustawienia dostępne dla różnych typów zasobów usługi Event Grid — tematy niestandardowe, tematy systemowe i 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.
PublishFailures Tak Nie Tak Tak
DataPlaneRequests Tak Nie Tak Tak

Ważne

W przypadku schematów niepowodzeń dostarczania, niepowodzeń publikowania i żądań płaszczyzny danych zobacz Dzienniki diagnostyczne.

Wymagania wstępne

  • Zasób aprowizowanej usługi Event Grid
  • Aprowizowana lokalizacja docelowa przechwytywania dzienników diagnostycznych:
    • Obszar roboczy usługi Log Analytics
    • Konto magazynu
    • Event Hubs
    • 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 dzienników diagnostycznych dla domeny są bardzo 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 nowe ustawienie diagnostyczne.

    Zrzuty ekranu przedstawiające stronę Ustawienia diagnostyczne tematu niestandardowego.

  5. Określ nazwę ustawienia diagnostycznego.

  6. Wybierz opcję allLogs w sekcji Dzienniki.

    Zrzut ekranu przedstawiający stronę Ustawienia diagnostyczne z wybraną pozycją Wszystkie dzienniki.

  7. Włącz co najmniej jedno miejsce docelowe przechwytywania dla dzienników, a następnie skonfiguruj je, wybierając poprzedni 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ę Archiwum na koncie magazynu, wybierz pozycję Konto magazynu — Konfiguruj, a następnie wybierz konto magazynu w subskrypcji platformy Azure.

      Zrzut ekranu przedstawiający stronę Ustawienia diagnostyczne z zaznaczoną pozycją Archiwum na koncie usługi Azure Storage i wybranym kontem magazynu.

    • Jeśli wybierzesz pozycję Stream 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ę

  8. Wybierz pozycję Zapisz. Następnie wybierz pozycję X w prawym rogu, aby zamknąć stronę.

  9. Teraz ponownie na stronie Ustawienia diagnostyczne upewnij się, że w tabeli Ustawienia diagnostyczne zostanie wyświetlony nowy wpis.

    Zrzut ekranu przedstawiający stronę

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

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

  1. Zaloguj się w witrynie Azure Portal.
  2. Przejdź do tematu systemowego, dla którego chcesz włączyć ustawienia dziennika diagnostycznego.
    1. Na pasku wyszukiwania u góry wyszukaj tematy systemowe usługi Event Grid. Wyszukiwanie tematów systemowych
    2. Wybierz temat systemowy, dla którego chcesz skonfigurować ustawienia diagnostyczne. Wybieranie tematu systemowego
  3. Wybierz pozycję Ustawienia diagnostyczne w obszarze Monitorowanie w menu po lewej stronie, a następnie wybierz pozycję Dodaj ustawienie diagnostyczne. Dodawanie ustawień diagnostycznych — przycisk
  4. Określ nazwę ustawienia diagnostycznego.
  5. Wybierz opcję allLogs w sekcji Dzienniki. Wybieranie niepowodzeń dostarczania
  6. Włącz co najmniej jedno miejsce docelowe przechwytywania dla dzienników, a następnie skonfiguruj je, wybierając poprzedni utworzony zasób przechwytywania.
    • Jeśli wybierzesz pozycję Wyślij do usługi Log Analytics, wybierz obszar roboczy usługi Log Analytics. Wysyłanie do usługi Log Analytics
    • Jeśli wybierzesz pozycję Archiwum na koncie magazynu, wybierz pozycję Konto magazynu — Konfiguruj, a następnie wybierz konto magazynu w subskrypcji platformy Azure. Archiwizowanie na koncie usługi Azure Storage
    • W przypadku wybrania pozycji Stream to an Event Hub (Przesyłanie strumieniowe do centrum zdarzeń) wybierz pozycję Event Hub — Configure (Centrum zdarzeń) — Konfiguruj, a następnie wybierz przestrzeń nazw usługi Event Hubs, centrum zdarzeń i zasady dostępu. Przesyłanie strumieniowe do centrum zdarzeń
  7. Wybierz pozycję Zapisz. Następnie wybierz pozycję X w prawym rogu, aby zamknąć stronę.
  8. Teraz ponownie na stronie Ustawienia diagnostyczne upewnij się, że w tabeli Ustawienia diagnostyczne zostanie wyświetlony nowy wpis. Ustawienie diagnostyczne na liście

Możesz również włączyć zbieranie wszystkich metryk dla tematu systemowego. Temat systemowy — włączanie wszystkich metryk

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

  1. Po włączeniu konta magazynu jako miejsca docelowego przechwytywania usługa Event Grid rozpocznie emitowanie dzienników diagnostycznych. Powinny zostać wyświetlone nowe kontenery o nazwie insights-logs-deliveryfailures i insights-logs-publishfailures na koncie magazynu.

    Magazyn — kontenery dla dzienników diagnostycznych

  2. Podczas przechodzenia przez jeden z kontenerów nastąpi przejście do obiektu blob w formacie JSON. Plik zawiera wpisy dziennika dla niepowodzenia dostarczania lub niepowodzenia publikowania. Ścieżka nawigacji reprezentuje identyfikator ResourceId tematu usługi Event Grid i znacznik czasu (poziom minuty) co do momentu emitowania wpisów dziennika. Plik blob/JSON, który można pobrać, w końcu jest zgodny ze schematem opisanym w następnej sekcji.

    Plik JSON w magazynie

  3. Zawartość powinna być widoczna w pliku JSON podobnym 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=DIAGNOSTICLOGSTEST-EASTUS.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://diagnosticlogstesting-eastus.servicebus.windows.net/, deliveryResponse=NotFound: The messaging entity 'sb://diagnosticlogstesting-eastus.servicebus.windows.net/eh-diagnosticlogstest' could not be found. TrackingId:c98c5af6-11f0-400b-8f56-c605662fb849_G14, SystemTracker:diagnosticlogstesting-eastus.servicebus.windows.net:eh-diagnosticlogstest, Timestamp:2019-11-01T00:17:13, referenceId: ac141738a9a54451b12b4cc31a10dedc_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. Podczas wdrażania tego przykładowego szablonu tworzone są 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łączanie dzienników diagnostycznych dla śladów inspekcji

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

Śledzenie inspekcji może służyć do zapewnienia, że dostęp do danych jest dozwolony tylko w celach autoryzowanych. Zbiera informacje o kontroli zabezpieczeń, takie jak nazwa zasobu, typ operacji, dostęp do sieci, poziom, region i inne. Aby uzyskać więcej informacji na temat włączania ustawienia diagnostycznego, zobacz Dzienniki diagnostyczne w tematach usługi Event Grid i domenach zdarzeń. Zrzut ekranu przedstawiający stronę Ustawienia diagnostyczne z wybraną pozycją Inspekcja.

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.