Diagnostische logboeken inschakelen voor Azure Event Grid-onderwerpen of -domeinen

Dit artikel bevat stapsgewijs instructies voor het inschakelen van diagnostische instellingen Event Grid onderwerpen of domeinen. Met deze instellingen kunt u logboeken voor publicatie- en leveringsfout vastleggen en weergeven.

Belangrijk

Zie Diagnostische logboeken voor het schema voor diagnostische logboeken.

Vereisten

  • Een ingericht Event Grid-onderwerp
  • Een inrichtende bestemming voor het vastleggen van diagnostische logboeken. Dit kan een van de volgende bestemmingen zijn op dezelfde locatie als het Event Grid-onderwerp:
    • Azure Storage-account
    • Event Hub
    • Log Analytics-werkruimte

Diagnostische logboeken inschakelen voor een aangepast onderwerp

Notitie

De volgende procedure bevat stapsgewijs instructies voor het inschakelen van diagnostische logboeken voor een onderwerp. De stappen voor het inschakelen van diagnostische logboeken voor een domein zijn vergelijkbaar. Navigeer in stap 2 naar het event grid-domein in Azure Portal.

  1. Meld u aan bij de Azure-portal.

  2. Navigeer naar het event grid-onderwerp waarvoor u diagnostische logboekinstellingen wilt inschakelen.

    1. Zoek in de zoekbalk bovenaan naar Event Grid Onderwerpen.

      Aangepaste onderwerpen zoeken

    2. Selecteer het onderwerp in de lijst waarvoor u diagnostische instellingen wilt configureren.

  3. Selecteer Diagnostische instellingen onder Bewaking in het menu links.

  4. Selecteer op de pagina Diagnostische instellingen de optie Nieuwe diagnostische instelling toevoegen.

    Knop Diagnostische instelling toevoegen

  5. Geef een naam op voor de diagnostische instelling.

  6. Selecteer de opties DeliveryFailures en PublishFailures in de sectie Logboek. Selecteer de fouten

  7. Schakel een of meer van de capture-bestemmingen voor de logboeken in en configureer deze door een eerder gemaakte capture-resource te selecteren.

    • Als u Archiveren naar een opslagaccount selecteert, selecteert Storage-account - Configureren en selecteert u vervolgens het opslagaccount in uw Azure-abonnement.

      Schermopname van de pagina 'Diagnostische instellingen' met 'Archiveren naar een Azure-opslagaccount' ingeschakeld en een opslagaccount geselecteerd.

    • Als u Streamen naar een Event Hub selecteert, selecteert u Event Hub - Configureren en selecteert u vervolgens Event Hubs naamruimte, Event Hub en het toegangsbeleid. Schermopname van de pagina 'Diagnostische instellingen' met 'Streamen naar een Event Hub' ingeschakeld.

    • Als u Verzenden naar Log Analytics selecteert, selecteert u de Log Analytics-werkruimte. Schermopname van de pagina 'Diagnostische instellingen' met 'Verzenden naar Log Analytics' ingeschakeld.

  8. Selecteer Opslaan. Selecteer vervolgens X in de rechterhoek om de pagina te sluiten.

  9. Ga nu terug naar de pagina Diagnostische instellingen en controleer of er een nieuwe vermelding wordt weergegeven in de Instellingen diagnostische gegevens. Schermopname van de pagina 'Diagnostische instellingen' met een nieuwe vermelding gemarkeerd in de tabel 'Diagnostische instellingen'.

    U kunt ook het verzamelen van alle metrische gegevens voor het onderwerp inschakelen.

Diagnostische logboeken inschakelen voor een systeemonderwerp

  1. Meld u aan bij de Azure-portal.

  2. Navigeer naar het event grid-onderwerp waarvoor u diagnostische logboekinstellingen wilt inschakelen.

    1. Zoek in de zoekbalk bovenaan naar Event Grid Systeemonderwerpen.

      Systeemonderwerpen zoeken

    2. Selecteer het systeemonderwerp waarvoor u diagnostische instellingen wilt configureren.

      Systeemonderwerp selecteren

  3. Selecteer Diagnostische instellingen onder Bewaking in het menu links en selecteer vervolgens Diagnostische instelling toevoegen.

    Diagnostische instellingen toevoegen - knop

  4. Geef een naam op voor de diagnostische instelling.

  5. Selecteer DeliveryFailures in de sectie Logboek. Leveringsfouten selecteren

  6. Schakel een of meer van de capture-bestemmingen voor de logboeken in en configureer deze door een eerder gemaakte capture-resource te selecteren.

    • Als u Verzenden naar Log Analytics selecteert, selecteert u de Log Analytics-werkruimte. Verzenden naar Log Analytics

    • Als u Archiveren naar een opslagaccount selecteert, selecteert Storage-account - Configureren en selecteert u vervolgens het opslagaccount in uw Azure-abonnement.

      Archiveren naar een Azure-opslagaccount

    • Als u Streamen naar een Event Hub selecteert, selecteert u Event Hub - Configureren en selecteert u vervolgens Event Hubs naamruimte, Event Hub en het toegangsbeleid. Streamen naar een Event Hub

  7. Selecteer Opslaan. Selecteer vervolgens X in de rechterhoek om de pagina te sluiten.

  8. Ga nu terug naar de pagina Diagnostische instellingen en controleer of er een nieuwe vermelding wordt weergegeven in de Instellingen diagnostische gegevens. Diagnostische instelling in de lijst

    U kunt ook het verzamelen van alle metrische gegevens voor het systeemonderwerp inschakelen.

    Systeemonderwerp: alle metrische gegevens inschakelen

Diagnostische logboeken weergeven in Azure Storage

  1. Zodra u een opslagaccount als een capture-bestemming hebt ingeschakeld, Event Grid diagnostische logboeken uit. U ziet nieuwe containers met de naam insights-logs-deliveryfailures en insights-logs-publishfailures in het opslagaccount.

    Storage containers voor diagnostische logboeken

  2. Wanneer u door een van de containers navigeert, komt u uit bij een blob in JSON-indeling. Het bestand bevat logboekgegevens voor een leveringsfout of een publicatiefout. Het navigatiepad vertegenwoordigt de ResourceId van het Event Grid-onderwerp en het tijdstempel (minuutniveau) voor wanneer de logboekgegevens zijn ingediend. Het blob-/JSON-bestand, dat kan worden gedownload, voldoet aan het schema dat in de volgende sectie wordt beschreven.

    JSON-bestand in de opslag

  3. De inhoud in het JSON-bestand moet er ongeveer als volgt uit zien:

    {
        "time": "2019-11-01T00:17:13.4389048Z",
        "resourceId": "/SUBSCRIPTIONS/SAMPLE-SUBSCTIPTION-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:"
    }
    

Een Azure Resource Manager gebruiken

Hier vindt u een voorbeeld van Azure Resource Manager om diagnostische instellingen in te stellen voor een Event Grid-onderwerp. Wanneer u deze voorbeeldsjabloon implementeert, worden de volgende resources gemaakt.

  • Een Event Grid-onderwerp
  • Een Log Analytics-werkruimte

Vervolgens wordt een diagnostische instelling voor het onderwerp gemaakt om diagnostische gegevens naar de Log Analytics-werkruimte te verzenden.

{
    "$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
                    }
                ]
            }
        }
    ]
}

Volgende stappen

Zie Diagnostische logboeken voor het logboekschema en andere conceptuele informatie over diagnostische logboeken voor onderwerpen of domeinen.