Configurar logs de diagnóstico por meio da API REST do Azure Monitor

Este artigo descreve como configurar logs de diagnóstico para o Azure Data Factory usando a API REST do Azure Monitor.

Definições de diagnóstico

Use as configurações de diagnóstico para configurar logs de diagnóstico para recursos não computacionais. As configurações para um controle de recursos têm os seguintes recursos:

  • Eles especificam para onde os logs de diagnóstico são enviados. Os exemplos incluem uma conta de armazenamento do Azure, um hub de eventos do Azure ou logs do Monitor.
  • Eles especificam quais categorias de log são enviadas.
  • Eles especificam por quanto tempo cada categoria de log deve ser mantida em uma conta de armazenamento.
  • Uma retenção de zero dias significa que os registos são mantidos para sempre. Caso contrário, o valor pode ser qualquer número de dias de 1 a 2.147.483.647.
  • Se as políticas de retenção estiverem definidas, mas o armazenamento de logs em uma conta de armazenamento estiver desabilitado, as políticas de retenção não terão efeito. Por exemplo, essa condição pode acontecer quando apenas hubs de eventos ou opções de logs do Monitor são selecionados.
  • As políticas de retenção são aplicadas por dia. O limite entre os dias ocorre à meia-noite do Tempo Universal Coordenado (UTC). No final de um dia, os logs de dias que estão além da política de retenção são excluídos. Por exemplo, se você tiver uma política de retenção de um dia, no início de hoje os logs de antes de ontem serão excluídos.

Habilite logs de diagnóstico por meio da API REST do Monitor

Use a API REST do Monitor para habilitar logs de diagnóstico.

Criar ou atualizar uma configuração de diagnóstico na API REST do Monitor

Pedir

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

Cabeçalhos

  • Substituir {api-version} por 2016-09-01.
  • Substitua {resource-id} pela ID do recurso para o qual você deseja editar as configurações de diagnóstico. Para obter mais informações, veja Utilizar grupos de recursos para gerir os recursos do Azure.
  • Defina o Content-Type cabeçalho como application/json.
  • Defina o cabeçalho de autorização para o token da Web JSON que você obteve da ID do Microsoft Entra. Para obter mais informações, consulte Autenticando solicitações.

Corpo

{
    "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": ""
}
Propriedade Type Description
storageAccountId String O ID do recurso da conta de armazenamento para a qual você deseja enviar logs de diagnóstico.
serviceBusRuleId String A ID da regra do barramento de serviço do namespace do barramento de serviço no qual você deseja que hubs de eventos sejam criados para logs de diagnóstico de streaming. O ID da regra tem o formato {service bus resource ID}/authorizationrules/{key name}.
workspaceId String A ID do espaço de trabalho onde os logs serão salvos.
metrics Valores de parâmetro da execução do pipeline a ser passado para o pipeline invocado Um objeto JSON que mapeia nomes de parâmetros para valores de argumento.
registos Tipo Complexo O nome de uma categoria de log de diagnóstico para um tipo de recurso. Para obter a lista de categorias de log de diagnóstico para um recurso, execute uma operação de configurações de diagnóstico GET.
categoria String Uma matriz de categorias de log e suas políticas de retenção.
timeGrain String A granularidade das métricas, que são capturadas no formato de duração ISO 8601. O valor da propriedade deve ser PT1M, que especifica um minuto.
ativado Booleano Especifica se a coleção da métrica ou categoria de log está habilitada para este recurso.
retençãoPolítica Tipo Complexo Descreve a política de retenção para uma métrica ou categoria de log. Esta propriedade é usada apenas para contas de armazenamento.
Dias Int O número de dias para manter as métricas ou logs. Se o valor da propriedade for 0, os logs serão mantidos para sempre. Esta propriedade é usada apenas para contas de armazenamento.

Response

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
}

Obter informações sobre configurações de diagnóstico na API REST do Monitor

Pedir

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

Cabeçalhos

  • Substituir {api-version} por 2016-09-01.
  • Substitua {resource-id} pela ID do recurso para o qual você deseja editar as configurações de diagnóstico. Para obter mais informações, veja Utilizar grupos de recursos para gerir os recursos do Azure.
  • Defina o Content-Type cabeçalho como application/json.
  • Defina o cabeçalho de autorização para um token da Web JSON obtido do ID do Microsoft Entra. Para obter mais informações, consulte Autenticando solicitações.

Response

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
}

Para obter mais informações, consulte Configurações de diagnóstico.

Monitorizar as operações do SSIS com o Azure Monitor