Журналы диагностики и метрики для диспетчера оркестрации рабочих процессов
Примечание.
Диспетчер оркестрации рабочих процессов управляется Apache Airflow.
В этой статье описаны действия, описанные ниже.
- Включите журналы и метрики диагностика для диспетчера оркестрации рабочих процессов в Фабрика данных Azure.
- Просмотр журналов и метрик.
- Выполните запрос .
- Отслеживайте метрики и задайте систему оповещений в сбое ациклического графа (DAG).
Необходимые компоненты
Вам требуется подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.
Включение журналов и метрик диагностика для диспетчера оркестрации рабочих процессов
Откройте ресурс фабрики данных и выберите параметры диагностики на самой левой панели. Щелкните команду Добавить параметр диагностики.
Заполните имя параметров диагностики. Выберите следующие категории для журналов Airflow:
- Журналы выполнения задач AirFlow
- Журналы рабочих ролей AirFlow
- Журналы обработки DAG airflow
- Журналы планировщика AirFlow
- Веб-журналы AirFlow
- Если выбрать вариант AllMetrics, станут доступны различные метрики Фабрики данных для мониторинга или создания оповещений. Эти метрики включают метрики для действий Фабрики данных и среды выполнения интеграции Диспетчера рабочих процессов, таких как
AirflowIntegrationRuntimeCpuUsage
иAirflowIntegrationRuntimeMemory
.
В разделе Сведения о месте назначения установите флажок Отправить в рабочую область Log Analytics.
Выберите Сохранить.
Просмотреть журналы
После добавления параметров диагностики их можно найти в разделе "Параметры диагностики". Чтобы получить доступ к журналам и просмотреть их, выберите настроенную рабочую область Log Analytics.
В разделе "Развернуть возможности Log Analytics" выберите "Просмотр журналов".
Вы направляетесь в рабочую область Log Analytics, где можно увидеть, что выбранные таблицы были импортированы в рабочую область автоматически.
Другие полезные ссылки для схемы:
- Справочник по журналам Azure Monitor — ADFAirflowSchedulerLogs | Microsoft Learn
- Справочник по журналам Azure Monitor — ADFAirflowTaskLogs | Microsoft Learn
- Справочник по журналам Azure Monitor — ADFAirflowWebLogs | Microsoft Learn
- Справочник по журналам Azure Monitor — ADFAirflowWorkerLogs | Microsoft Learn
- Справочник по журналам Azure Monitor — AirflowDagProcessingLogs | Microsoft Learn
Напишите запрос
Начнем с самого простого запроса, который возвращает все записи в
ADFAirflowTaskLogs
. Вы можете дважды щелкнуть имя таблицы, чтобы добавить ее в окно запроса. Вы также можете ввести имя таблицы непосредственно в окне.Чтобы сузить результаты поиска, например фильтрацию на основе определенного идентификатора задачи, можно использовать следующий запрос:
ADFAirflowTaskLogs | where DagId == "<your_dag_id>" and TaskId == "<your_task_id>"
Аналогичным образом можно создавать пользовательские запросы в соответствии с вашими потребностями с помощью любых таблиц, доступных в LogManagement
.
Дополнительные сведения см. в разделе:
- Руководство по Log Analytics
- Обзор язык запросов Kusto (KQL) — Azure Data Обозреватель | Microsoft Learn
Метрики мониторинга
Фабрика данных предлагает комплексные метрики для сред выполнения интеграции Airflow, что позволяет эффективно отслеживать производительность среды выполнения интеграции Airflow и устанавливать механизмы оповещения по мере необходимости.
Откройте ресурс фабрики данных.
В левой области в разделе "Мониторинг " выберите "Метрики".
Выберите метрику >пространства>имен метрик, которую вы хотите отслеживать.
Просмотрите многострочной диаграмме, которая визуализирует процент ЦП среды выполнения интеграции и размер пакета dag среды выполнения интеграции.
Вы можете настроить правило генерации оповещений, которое активирует, когда метрики соответствуют определенным условиям. Дополнительные сведения см. в статье "Обзор оповещений Azure Monitor".
Нажмите кнопку "Сохранить на панель мониторинга " после завершения диаграммы или исчезнет диаграмма.
Метрики потока воздуха
В следующей таблице перечислены метрики, доступные для диспетчера оркестрации рабочих процессов. Заголовки таблицы:
- Метрика: отображаемое имя метрик, как оно отображается в портал Azure.
- Имя в REST API: имя метрики, указанное в REST API.
- Описание: описание метрики.
- Единица измерения: единица измерения.
- Агрегирование: тип агрегирования по умолчанию. Допустимые значения: среднее, минимальное, максимальное, общее и число.
- Измерения: измерения, доступные для метрики.
- Интервалы времени, в которых выборка метрики выполняется. Например, PT1M указывает, что метрика выполняется каждую минуту, PT30M каждые 30 минут, PT1H каждый час и т. д.
- Экспорт DS: можно ли экспортировать метрики в журналы Azure Monitor с помощью параметров диагностики.
Metric | Имя в REST API | Description | Ед. изм. | Агрегат | Измерения | Зерна времени | Экспорт DS |
---|---|---|---|---|---|---|---|
Ошибка времени ожидания времени ожидания задачи Airflow Integration Runtime Celery | AirflowIntegrationRuntimeCeleryTaskTimeoutError |
Количество ошибок, возникающих AirflowTaskTimeout при публикации задачи в Celery Broker. |
Count | Итог | IntegrationRuntimeName |
PT1M | No |
Среда выполнения интеграции Airflow собирает dags базы данных | AirflowIntegrationRuntimeCollectDBDags |
Миллисекундах, взятых для получения всех сериализованных daG из базы данных. | Миллисекунды | По средней | IntegrationRuntimeName |
PT1M | No |
Процент ЦП среды выполнения интеграции Airflow | AirflowIntegrationRuntimeCpuPercentage |
Процент использования ЦП среды выполнения интеграции Airflow. | Процент | По средней | IntegrationRuntimeName , ContainerName |
PT1M | No |
Использование памяти среды выполнения интеграции Airflow | AirflowIntegrationRuntimeCpuUsage |
Милликоры, используемые средой выполнения интеграции Airflow, указывающие ресурсы ЦП, используемые в тысячах ядер ЦП. | Millicores | По средней | IntegrationRuntimeName , ContainerName |
PT1M | Да |
Размер пакета dag для среды выполнения интеграции Airflow | AirflowIntegrationRuntimeDagBagSize |
Количество групп УПРАВЛЕНИЯ, обнаруженных при выполнении планировщиком проверки на основе его конфигурации. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Исключения обратного вызова среды выполнения Airflow | AirflowIntegrationRuntimeDagCallbackExceptions |
Количество исключений, вызванных обратными вызовами DAG. При возникновении исключений это означает, что обратный вызов DAG не работает. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Ошибка обновления файла DAG среды выполнения Airflow | AirflowIntegrationRuntimeDAGFileRefreshError |
Количество сбоев при загрузке файлов DAG. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Ошибки импорта в среде выполнения интеграции Airflow | AirflowIntegrationRuntimeDAGProcessingImportErrors |
Количество ошибок при попытке анализа файлов DAG. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Продолжительность обработки DAG среды выполнения интеграции Airflow | AirflowIntegrationRuntimeDAGProcessingLastDuration |
Секунды, затраченные на загрузку определенного файла DAG. | Миллисекунды | По средней | IntegrationRuntimeName , DagFile |
PT1M | No |
Среда выполнения интеграции Airflow DAG, обрабатывающая последний запуск секунды назад | AirflowIntegrationRuntimeDAGProcessingLastRunSecondsAgo |
Секунды с момента <последнего обработки dag_file> . | сек. | По средней | IntegrationRuntimeName , DagFile |
PT1M | No |
Застои среды выполнения интеграции Airflow DAG ProcessingManager | AirflowIntegrationRuntimeDAGProcessingManagerStalls |
Число застопорилось DagFileProcessorManager . |
Count | Итог | IntegrationRuntimeName |
PT1M | No |
Процессы обработки DAG среды выполнения интеграции Airflow | AirflowIntegrationRuntimeDAGProcessingProcesses |
Относительное число текущих процессов синтаксического анализа DAG. (Например, это разностное значение отрицательно, когда после отправки последней метрики были завершены процессы.) | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Время ожидания обработчика обработки обработчика обработки airflow Integration Runtime | AirflowIntegrationRuntimeDAGProcessingProcessorTimeouts |
Число обработчиков файлов, которые были убиты, потому что они заняли слишком много времени. | сек. | По средней | IntegrationRuntimeName |
PT1M | No |
Время синтаксического анализа среды выполнения интеграции Airflow | AirflowIntegrationRuntimeDAGProcessingTotalParseTime |
Секунды, затраченные на сканирование и импорт dag_processing.file_path_queue_size файлов DAG. |
сек. | По средней | IntegrationRuntimeName |
PT1M | No |
Проверка зависимостей среды выполнения интеграции Airflow | AirflowIntegrationRuntimeDAGRunDependencyCheck |
Миллисекунда, взятые в проверка зависимостей DAG. | Миллисекунды | По средней | IntegrationRuntimeName , DagId |
PT1M | No |
Сбой выполнения daG среды выполнения Airflow Integration Runtime | AirflowIntegrationRuntimeDAGRunDurationFailed |
Секунды, затраченные DagRun на достижение состояния сбоя. |
Миллисекунды | По средней | IntegrationRuntimeName , DagId |
PT1M | No |
Успешное выполнение daG среды выполнения Airflow Integration Runtime | AirflowIntegrationRuntimeDAGRunDurationSuccess |
Секунды, затраченные DagRun на достижение состояния успешности. |
Миллисекунды | По средней | IntegrationRuntimeName , DagId |
PT1M | No |
DaG среды выполнения интеграции Airflow запускает первую задержку планирования задач | AirflowIntegrationRuntimeDAGRunFirstTaskSchedulingDelay |
Секунды, прошедшие между первой задачей start_date и ожидаемым DagRun началом. |
Миллисекунды | По средней | IntegrationRuntimeName , DagId |
PT1M | No |
Задержка расписания выполнения daG среды выполнения Airflow Integration Runtime | AirflowIntegrationRuntimeDAGRunScheduleDelay |
Секунды задержки между запланированной DagRun датой начала и фактической DagRun датой начала. |
Миллисекунды | По средней | IntegrationRuntimeName , DagId |
PT1M | No |
Открытые слоты среды выполнения интеграции Airflow | AirflowIntegrationRuntimeExecutorOpenSlots |
Количество открытых слотов исполнителя. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Задачи выполнения среды выполнения интеграции Airflow | AirflowIntegrationRuntimeExecutorQueuedTasks |
Количество задач в очереди исполнителя. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Выполнение задач выполнения среды выполнения интеграции Airflow | AirflowIntegrationRuntimeExecutorRunningTasks |
Количество выполняемых задач исполнителя. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Завершение задания среды выполнения интеграции Airflow | AirflowIntegrationRuntimeJobEnd |
Число завершенных <заданий job_name> , например SchedulerJob и LocalTaskJob . |
Count | Итог | IntegrationRuntimeName , Job |
PT1M | No |
Сбой пульса среды выполнения интеграции Airflow | AirflowIntegrationRuntimeJobHeartbeatFailure |
Число неудачных пульсов для <задания job_name>, напримерSchedulerJob .LocalTaskJob |
Count | Итог | IntegrationRuntimeName , Job |
PT1M | No |
Запуск задания среды выполнения интеграции Airflow | AirflowIntegrationRuntimeJobStart |
Число запущенных <заданий job_name> , например SchedulerJob и LocalTaskJob . |
Count | Итог | IntegrationRuntimeName , Job |
PT1M | No |
Процент памяти среды выполнения интеграции Airflow | AirflowIntegrationRuntimeMemoryPercentage |
Процент памяти, используемый средами выполнения интеграции Airflow. | Процент | По средней | IntegrationRuntimeName , ContainerName |
PT1M | Да |
Число узлов среды выполнения интеграции Airflow | AirflowIntegrationRuntimeNodeCount |
Count | По средней | IntegrationRuntimeName , ComputeNodeSize |
PT1M | Да | |
Сбои оператора среды выполнения интеграции Airflow | AirflowIntegrationRuntimeOperatorFailures |
Всего сбоев операторов. | Count | Итог | IntegrationRuntimeName , Operator |
PT1M | No |
Успешные успехи оператора среды выполнения интеграции Airflow | AirflowIntegrationRuntimeOperatorSuccesses |
Общий объем успешных операций оператора. | Count | Итог | IntegrationRuntimeName , Operator |
PT1M | No |
Открытые слоты пула среды выполнения интеграции Airflow | AirflowIntegrationRuntimePoolOpenSlots |
Количество открытых слотов в пуле. | Count | Итог | IntegrationRuntimeName , Pool |
PT1M | No |
Слоты пула среды выполнения интеграции Airflow | AirflowIntegrationRuntimePoolQueuedSlots |
Количество слотов в очереди в пуле. | Count | Итог | IntegrationRuntimeName , Pool |
PT1M | No |
Пул среды выполнения интеграции Airflow с запущенным слотами | AirflowIntegrationRuntimePoolRunningSlots |
Количество запущенных слотов в пуле. | Count | Итог | IntegrationRuntimeName , Pool |
PT1M | No |
Задачи нехватки пула среды выполнения интеграции Airflow | AirflowIntegrationRuntimePoolStarvingTasks |
Количество голодающих задач в пуле. | Count | Итог | IntegrationRuntimeName , Pool |
PT1M | No |
Критически важный раздел планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerCriticalSectionBusy |
Количество раз, когда процесс планировщика пытался получить блокировку критического раздела (необходимо для отправки задач исполнителя) и обнаружил, что он заблокирован другим процессом. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Длительность критического раздела планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerCriticalSectionDuration |
Миллисекунды, потраченные в критическом разделе цикла планировщика. Только один планировщик может ввести этот цикл одновременно. | Миллисекунды | По средней | IntegrationRuntimeName |
PT1M | No |
Сбой попыток отправки электронной почты в среде выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerFailedSLAEmailAttempts |
Количество неудачных попыток уведомления по электронной почте об уровне обслуживания. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Планировщик пульса планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerHeartbeat |
Пульс планировщика. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Принятые задачи планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerOrphanedTasksAdopted |
Число потерянных задач, принятых планировщиком. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Снятые задачи планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerOrphanedTasksCleared |
Число потерянных задач, очищенных планировщиком. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Исполняемые задачи планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerTasksExecutable |
Количество задач, готовых к выполнению (задано в очередь) в отношении ограничений пула, параллелизма DAG, состояния исполнителя и приоритета. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Задачи планировщика среды выполнения интеграции Airflow, убитые внешним образом | AirflowIntegrationRuntimeSchedulerTasksKilledExternally |
Число задач, убитых за пределами. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Выполнение задач планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerTasksRunning |
Count | Итог | IntegrationRuntimeName |
PT1M | No | |
Задачи планировщика среды выполнения интеграции Airflow | AirflowIntegrationRuntimeSchedulerTasksStarving |
Количество задач, которые не могут быть запланированы из-за отсутствия открытого слота в пуле. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Запущенные экземпляры задач среды выполнения интеграции Airflow | AirflowIntegrationRuntimeStartedTaskInstances |
Count | Итог | IntegrationRuntimeName , , DagId TaskId |
PT1M | No | |
Экземпляр задачи среды выполнения airflow Integration Runtime, созданный с помощью оператора | AirflowIntegrationRuntimeTaskInstanceCreatedUsingOperator |
Количество экземпляров задач, созданных для конкретного оператора. | Count | Итог | IntegrationRuntimeName , Operator |
PT1M | No |
Длительность экземпляра задачи среды выполнения интеграции Airflow | AirflowIntegrationRuntimeTaskInstanceDuration |
Миллисекунды | По средней | IntegrationRuntimeName , , DagId TaskID |
PT1M | No | |
Сбои экземпляра задачи среды выполнения airflow | AirflowIntegrationRuntimeTaskInstanceFailures |
Общие сбои экземпляров задач. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Завершен экземпляр задачи среды выполнения интеграции Airflow | AirflowIntegrationRuntimeTaskInstanceFinished |
Общие экземпляры задач завершены. | Count | Итог | IntegrationRuntimeName , , DagId TaskId State |
PT1M | No |
Экземпляр задачи среды выполнения интеграции Airflow ранее выполнен успешно | AirflowIntegrationRuntimeTaskInstancePreviouslySucceeded |
Число ранее успешных экземпляров задач. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Успешное выполнение задачи среды выполнения Airflow | AirflowIntegrationRuntimeTaskInstanceSuccesses |
Общий успех экземпляра задачи. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Задача среды выполнения интеграции Airflow удалена из DAG | AirflowIntegrationRuntimeTaskRemovedFromDAG |
Количество задач, удаленных для определенной daG. (То есть задача больше не существует в DAG.) | Count | Итог | IntegrationRuntimeName , DagId |
PT1M | No |
Задача среды выполнения интеграции Airflow восстановлена в DAG | AirflowIntegrationRuntimeTaskRestoredToDAG |
Количество задач, восстановленных для определенного daG. (То есть экземпляр задачи, который ранее находился в состоянии REMOVED в базе данных, добавляется в DAG-файл.) | Count | Итог | IntegrationRuntimeName , DagId |
PT1M | No |
Триггеры среды выполнения интеграции Airflow блокировали основной поток | AirflowIntegrationRuntimeTriggersBlockedMainThread |
Количество триггеров, блокировавших основной поток (скорее всего, потому что они не были полностью асинхронными). | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Сбой триггеров среды выполнения интеграции Airflow | AirflowIntegrationRuntimeTriggersFailed |
Количество триггеров, которые произошли с ошибкой, прежде чем они могли вызвать событие. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Запуск триггеров среды выполнения интеграции Airflow | AirflowIntegrationRuntimeTriggersRunning |
Количество триггеров, запущенных в данный момент для триггера (описано именем узла). | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Триггеры среды выполнения интеграции Airflow успешно выполнены | AirflowIntegrationRuntimeTriggersSucceeded |
Количество триггеров, которые запускали по крайней мере одно событие. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Задачи зомби среды выполнения интеграции Airflow | AirflowIntegrationRuntimeZombiesKilled |
Зомби-задачи погибли. | Count | Итог | IntegrationRuntimeName |
PT1M | No |
Дополнительные сведения см. в разделе Поддерживаемые метрики для Microsoft.DataFactory/фабрик.