Настройка журналов диагностики с помощью Azure Monitor REST API

В этой статье описывается, как настроить журналы диагностики для Фабрики данных Azure с помощью REST API Azure Monitor.

Параметры диагностики

Используйте параметры диагностики для конфигурации журналов диагностики всех ресурсов, кроме вычислительных. Параметры для элемента управления ресурсами имеют следующие характеристики.

  • Они указывают, куда отправляются журналы диагностики. Среди примеров может быть учетная запись хранения Azure, концентратор событий Azure и журналы мониторинга.
  • В них указывается, какие категории журналов отправляются.
  • Как долго должны храниться журналы каждой категории в учетной записи хранения.
  • Срок хранения 0 дней означает, что журналы хранятся неограниченно долго. В противном случае укажите количество дней в диапазоне от 1 до 2 147 483 647.
  • Если политики хранения заданы, но хранение журналов в учетной записи хранения отключено, политики хранения не будут применены. Например, это может произойти, если выбраны только параметры концентраторов событий или журналов мониторинга.
  • Политики хранения применяются раз в день. Граница между днями выполняется в полночь в формате UTC. В конце дня журналы удаляются, если выходят за пределы числа дней политики хранения. Например, если настроена политика хранения в течение одного дня, то в начале текущего дня журналы за вчерашний день будет удалены.

Включение журналов диагностики с помощью REST API Monitor

Используйте REST API Monitor, чтобы включить журналы диагностики.

Создайте или обновите параметры диагностики в REST API Monitor.

Запросить

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

Заголовки

  • Замените {api-version} на 2016-09-01.
  • Замените {resource-id} идентификатором ресурса, параметры диагностики которого вы хотите изменить. Дополнительные сведения см. в статье Управление ресурсами Azure через портал.
  • В качестве заголовка Content-Type установите application/json.
  • Задайте заголовок авторизации для веб-маркера JSON, полученного из идентификатора Microsoft Entra. Дополнительные сведения см. в статье Сценарии аутентификации в Azure Active Directory.

Текст

{
    "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": ""
}
Свойство Type Описание
storageAccountId Строка Идентификатор учетной записи хранения, в которую необходимо отправить журналы диагностики.
serviceBusRuleId Строка Идентификатор правила служебной шины для пространства имен служебной шины, в котором будут созданы концентраторы событий для потоковой передачи журналов диагностики. Идентификатор правила имеет следующий формат: {service bus resource ID}/authorizationrules/{key name}.
WorkspaceId Строка Идентификатор рабочей области, в которой будут сохранены журналы.
metrics Значения параметров выполнения конвейера, которые должны быть переданы в вызываемый конвейер. Объект JSON, сопоставляющий имена параметров со значениями аргументов.
Журналы Сложный тип Имя категории журнала диагностики для типа ресурса. Чтобы получить список категорий журналов диагностики ресурса, сначала выполните операцию получения параметров диагностики.
category Строка Массив категорий журналов и политики их хранения.
timegrain Строка Уровень детализации метрик, сохраненных в формате длительности ISO 8601. Значение свойства должно быть равно PT1M, что указывает одну минуту.
enabled Логический Указывает, включен ли сбор этой метрики или категории журнала для выбранного ресурса.
retentionPolicy Сложный тип Описывает политику хранения метрики или категории журналов. Это свойство используется только для учетных записей хранения.
days Int Число дней для хранения метрик или журналов. Если значение свойства равно 0, журналы хранятся неограниченное время. Это свойство используется только для учетных записей хранения.

Ответ

200 ОК.

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

Получение параметров диагностики в REST API Azure Monitor

Запросить

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

Заголовки

  • Замените {api-version} на 2016-09-01.
  • Замените {resource-id} идентификатором ресурса, параметры диагностики которого вы хотите изменить. Дополнительные сведения см. в статье Управление ресурсами Azure через портал.
  • В качестве заголовка Content-Type установите application/json.
  • Задайте для заголовка авторизации веб-маркер JSON, полученный из идентификатора Microsoft Entra. Дополнительные сведения см. в статье Сценарии аутентификации в Azure Active Directory.

Ответ

200 ОК.

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

Дополнительные сведения см. в статье о параметрах диагностики.

Мониторинг операций служб SSIS с помощью Azure Monitor