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.
Zaloguj się w witrynie Azure Portal.
Przejdź do tematu usługi Event Grid, dla którego chcesz włączyć ustawienia dziennika diagnostycznego.
Na pasku wyszukiwania u góry wyszukaj tematy usługi Event Grid.
Wybierz temat z listy, dla której chcesz skonfigurować ustawienia diagnostyczne.
Wybierz pozycję Ustawienia diagnostyczne w obszarze Monitorowanie w menu po lewej stronie.
Na stronie Ustawienia diagnostyczne wybierz pozycję Dodaj nowe ustawienie diagnostyczne.
Określ nazwę ustawienia diagnostycznego.
Wybierz opcję allLogs w sekcji Dzienniki.
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.
Jeśli wybierzesz pozycję Archiwum na koncie magazynu, wybierz pozycję Konto magazynu — Konfiguruj, a następnie wybierz konto magazynu w subskrypcji platformy Azure.
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.
Wybierz pozycję Zapisz. Następnie wybierz pozycję X w prawym rogu, aby zamknąć stronę.
Teraz ponownie na stronie Ustawienia diagnostyczne upewnij się, że w tabeli Ustawienia diagnostyczne zostanie wyświetlony nowy wpis.
Możesz również włączyć zbieranie wszystkich metryk dla tematu.
Włączanie dzienników diagnostycznych dla tematów systemu usługi Event Grid
- Zaloguj się w witrynie Azure Portal.
- Przejdź do tematu systemowego, dla którego chcesz włączyć ustawienia dziennika diagnostycznego.
- Na pasku wyszukiwania u góry wyszukaj tematy systemowe usługi Event Grid.
- Wybierz temat systemowy, dla którego chcesz skonfigurować ustawienia diagnostyczne.
- Wybierz pozycję Ustawienia diagnostyczne w obszarze Monitorowanie w menu po lewej stronie, a następnie wybierz pozycję Dodaj ustawienie diagnostyczne.
- Określ nazwę ustawienia diagnostycznego.
- Wybierz opcję allLogs w sekcji Dzienniki.
- 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.
- Jeśli wybierzesz pozycję Archiwum na koncie magazynu, wybierz pozycję Konto magazynu — Konfiguruj, a następnie wybierz konto magazynu w subskrypcji platformy Azure.
- 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.
- Wybierz pozycję Zapisz. Następnie wybierz pozycję X w prawym rogu, aby zamknąć stronę.
- Teraz ponownie na stronie Ustawienia diagnostyczne upewnij się, że w tabeli Ustawienia diagnostyczne zostanie wyświetlony nowy wpis.
Możesz również włączyć zbieranie wszystkich metryk dla tematu systemowego.
Wyświetlanie dzienników diagnostycznych w usłudze Azure Storage
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.
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.
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ń.
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.