Freigeben über


Einrichten von Diagnoseprotokollen über die Azure Monitor-REST-API

In diesem Artikel wird beschrieben, wie Sie Diagnoseprotokolle für Azure Data Factory mithilfe der Azure Monitor-REST-API einrichten.

Diagnoseeinstellungen

Verwenden Sie Diagnoseeinstellungen, um Diagnoseprotokolle für nicht komputeTe Ressourcen zu konfigurieren. Die Einstellungen für ein Ressourcensteuerelement weisen die folgenden Features auf:

  • Sie geben an, wo Diagnoseprotokolle gesendet werden. Beispiele hierfür sind ein Azure-Speicherkonto, ein Azure Event Hub oder Überwachungsprotokolle.
  • Sie geben an, welche Protokollkategorien gesendet werden.
  • Sie geben an, wie lange jede Protokollkategorie in einem Speicherkonto aufbewahrt werden soll.
  • Eine Aufbewahrung von null Tagen bedeutet, dass Protokolle für immer aufbewahrt werden. Andernfalls kann der Wert eine beliebige Anzahl von Tagen zwischen 1 und 2.147.483.647 sein.
  • Wenn Aufbewahrungsrichtlinien festgelegt sind, das Speichern von Protokollen in einem Speicherkonto jedoch deaktiviert ist, haben die Aufbewahrungsrichtlinien keine Auswirkungen. Diese Bedingung kann beispielsweise auftreten, wenn nur die Ereignishubs- oder Überwachungsprotokolloptionen ausgewählt sind.
  • Aufbewahrungsrichtlinien werden täglich angewendet. Die Grenze zwischen Tagen erfolgt um Mitternacht koordinierte Weltzeit (UTC). Am Ende eines Tages werden Protokolle von Tagen, die über die Aufbewahrungsrichtlinie hinausgehen, gelöscht. Wenn Sie beispielsweise eine Aufbewahrungsrichtlinie von einem Tag haben, werden die Protokolle von vor gestern am Anfang von heute gelöscht.

Aktivieren von Diagnoseprotokollen über die Monitor-REST-API

Verwenden Sie die Monitor-REST-API, um Diagnoseprotokolle zu aktivieren.

Erstellen oder Aktualisieren einer Diagnoseeinstellung in der Monitor-REST-API

Anforderung

PUT
https://management.azure.com/{resource-id}/providers/microsoft.insights/diagnosticSettings/service?api-version={api-version}

Headers

  • Ersetzen Sie {api-version} durch 2016-09-01.
  • Ersetzen Sie sie {resource-id} durch die ID der Ressource, für die Sie Diagnoseeinstellungen bearbeiten möchten. Weitere Informationen finden Sie unter Verwenden von Ressourcengruppen zum Verwalten von Azure-Ressourcen.
  • Legen Sie den Header Content-Type auf application/json fest.
  • Legen Sie den Autorisierungsheader auf das JSON-Webtoken fest, das Sie von Microsoft Entra ID erhalten haben. Weitere Informationen finden Sie unter Authentifizierungsanforderungen.

Körper

{
    "properties": {
        "storageAccountId": "/subscriptions/<subID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Storage/storageAccounts/<storageAccountName>",
        "serviceBusRuleId": "/subscriptions/<subID>/resourceGroups/<resourceGroupName>/providers/Microsoft.EventHub/namespaces/<eventHubName>/authorizationrules/RootManageSharedAccessKey",
        "workspaceId": "/subscriptions/<subID>/resourceGroups/<resourceGroupName>/providers/Microsoft.OperationalInsights/workspaces/<LogAnalyticsName>",
        "metrics": [
        ],
        "logs": [
                {
                    "category": "PipelineRuns",
                    "enabled": true,
                    "retentionPolicy": {
                        "enabled": false,
                        "days": 0
                    }
                },
                {
                    "category": "TriggerRuns",
                    "enabled": true,
                    "retentionPolicy": {
                        "enabled": false,
                        "days": 0
                    }
                },
                {
                    "category": "ActivityRuns",
                    "enabled": true,
                    "retentionPolicy": {
                        "enabled": false,
                        "days": 0
                    }
                }
            ]
    },
    "location": ""
}
Eigentum Typ Beschreibung
storageAccountId String Die Ressourcen-ID des Speicherkontos, an das Sie Diagnoseprotokolle senden möchten.
serviceBusRuleId String Die Service-Bus-Regel-ID des Service-Bus-Namespaces, in dem Sie Ereignishubs für das Streaming von Diagnoseprotokollen erstellen möchten. Die Regel-ID weist das Format {service bus resource ID}/authorizationrules/{key name}auf.
workspaceId String Die Arbeitsbereichs-ID des Arbeitsbereichs, in dem die Protokolle gespeichert werden.
Metriken Parameterwerte der Pipelineausführung, die an die aufgerufene Pipeline übergeben werden sollen Ein JSON-Objekt, das Parameternamen Argumentwerten zuordnet.
Logs Komplexer Typ Der Name einer Diagnoseprotokollkategorie für einen Ressourcentyp. Um die Liste der Diagnoseprotokollkategorien für eine Ressource abzurufen, führen Sie einen GET-Diagnoseeinstellungsvorgang aus.
Kategorie String Ein Array von Protokollkategorien und deren Aufbewahrungsrichtlinien.
timeGrain String Die Granularität von Metriken, die im ISO 8601-Dauerformat erfasst werden. Der Eigenschaftswert muss sein PT1M, der eine Minute angibt.
aktiviert Boolean Gibt an, ob die Auflistung der Metrik- oder Protokollkategorie für diese Ressource aktiviert ist.
Aufbewahrungsrichtlinie Komplexer Typ Beschreibt die Aufbewahrungsrichtlinie für eine Metrik oder Protokollkategorie. Diese Eigenschaft wird nur für Speicherkonten verwendet.
Tage Int Die Anzahl der Tage, um die Metriken oder Protokolle beizubehalten. Wenn der Eigenschaftswert 0 ist, werden die Protokolle für immer aufbewahrt. Diese Eigenschaft wird nur für Speicherkonten verwendet.

Antwort

200 OK.

{
    "id": "/subscriptions/<subID>/resourcegroups/adf/providers/microsoft.datafactory/factories/shloadobetest2/providers/microsoft.insights/diagnosticSettings/service",
    "type": null,
    "name": "service",
    "location": null,
    "kind": null,
    "tags": null,
    "properties": {
        "storageAccountId": "/subscriptions/<subID>/resourceGroups/<resourceGroupName>//providers/Microsoft.Storage/storageAccounts/<storageAccountName>",
        "serviceBusRuleId": "/subscriptions/<subID>/resourceGroups/<resourceGroupName>//providers/Microsoft.EventHub/namespaces/<eventHubName>/authorizationrules/RootManageSharedAccessKey",
        "workspaceId": "/subscriptions/<subID>/resourceGroups/<resourceGroupName>//providers/Microsoft.OperationalInsights/workspaces/<LogAnalyticsName>",
        "eventHubAuthorizationRuleId": null,
        "eventHubName": null,
        "metrics": [],
        "logs": [
            {
                "category": "PipelineRuns",
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            },
            {
                "category": "TriggerRuns",
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            },
            {
                "category": "ActivityRuns",
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            }
        ]
    },
    "identity": null
}

Abrufen von Informationen zu Diagnoseeinstellungen in der Monitor-REST-API

Anforderung

GET
https://management.azure.com/{resource-id}/providers/microsoft.insights/diagnosticSettings/service?api-version={api-version}

Headers

  • Ersetzen Sie {api-version} durch 2016-09-01.
  • Ersetzen Sie sie {resource-id} durch die ID der Ressource, für die Sie Diagnoseeinstellungen bearbeiten möchten. Weitere Informationen finden Sie unter Verwenden von Ressourcengruppen zum Verwalten von Azure-Ressourcen.
  • Legen Sie den Header Content-Type auf application/json fest.
  • Legen Sie den Autorisierungsheader auf ein JSON-Webtoken fest, das Sie von der Microsoft Entra-ID erhalten haben. Weitere Informationen finden Sie unter Authentifizierungsanforderungen.

Antwort

200 OK.

{
    "id": "/subscriptions/<subID>/resourcegroups/adf/providers/microsoft.datafactory/factories/shloadobetest2/providers/microsoft.insights/diagnosticSettings/service",
    "type": null,
    "name": "service",
    "location": null,
    "kind": null,
    "tags": null,
    "properties": {
        "storageAccountId": "/subscriptions/<subID>/resourceGroups/shloprivate/providers/Microsoft.Storage/storageAccounts/azmonlogs",
        "serviceBusRuleId": "/subscriptions/<subID>/resourceGroups/shloprivate/providers/Microsoft.EventHub/namespaces/shloeventhub/authorizationrules/RootManageSharedAccessKey",
        "workspaceId": "/subscriptions/<subID>/resourceGroups/ADF/providers/Microsoft.OperationalInsights/workspaces/mihaipie",
        "eventHubAuthorizationRuleId": null,
        "eventHubName": null,
        "metrics": [],
        "logs": [
            {
                "category": "PipelineRuns",
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            },
            {
                "category": "TriggerRuns",
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            },
            {
                "category": "ActivityRuns",
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            }
        ]
    },
    "identity": null
}

Weitere Informationen finden Sie unter Diagnoseeinstellungen.

Überwachen von SSIS-Vorgängen mit Azure Monitor