Ограничить/исключить определенные журналы из Airflow в Datadog

Мы наблюдаем, что Airflow отправляет большое количество журналов в Datadog, и мы хотим ограничить/сократить эти журналы, исключив журналы из следующих задач:

  • pod_manager.py
  • base.py
  • base_aws.py
  • logging_mixin.py

Есть ли у нас какие-либо параметры конфигурации, в которых я могу определить это требование?

У нас есть Airflow-2.0, работающий на Kubernetes.

Чтобы отправить в Datadog только определенное подмножество журналов, используйте параметр log_processing_rules в файле конфигурации с типом exclude_at_match или include_at_match. Обратитесь к этому документу для получения дополнительной информации и дайте мне знать, если это поможет.

Hemanth Kumar 13.02.2023 07:12

Спасибо @HemanthKumar. Я пытаюсь реализовать это, но я не понимаю, какой компонент воздушного потока генерирует вышеуказанные журналы, поскольку я вижу только файл yaml для расписания и веб-сервера.

suresh choudhary 13.02.2023 08:01

Можете ли вы попробовать, как показано ниже, исключить журналы из задач с именами pod_manager.py, base.py, base_aws.py, drgn_kubernetes_pod_operator.py, logging_mixin.py и standard_task_runner.py. Можете ли вы использовать следующие параметры конфигурации: [логирование] exclude_tasks=pod_manager.py,base.py,base_aws.py,drgn_kubern‌​etes_pod_operator.py‌​,logging_mixin.py,st‌​andard_task_runner.p‌​y Эти параметры можно добавить в файл airflow.cfg, который находится в домашнем каталоге Airflow. Обратитесь к этому ТАК

Hemanth Kumar 13.02.2023 08:07

@HemanthKumar Я протестировал вышеуказанный метод у себя на месте, и он не работает. Я могу видеть журналы задачи после ее исключения с помощью вышеупомянутого метода. Пожалуйста, дайте мне знать, если что-нибудь еще я могу попробовать.

suresh choudhary 13.02.2023 10:01

Вы пробовали использовать решение, представленное в первом комментарии. Попробуйте этот файл конфигурации в airflow.cfg и сообщите мне об ошибке, которую вы получаете?

Hemanth Kumar 13.02.2023 10:40

@HemanthKumar да, первое решение будет работать, но я не понимаю, какой компонент воздушного потока генерирует вышеупомянутые журналы. Будут ли все журналы генерироваться расписанием?

suresh choudhary 16.02.2023 02:58

Я думаю, да, вы можете взглянуть на это расписание и попробовать первое решение.

Hemanth Kumar 16.02.2023 09:34

@HemanthKumarI протестировал, и первое решение работает нормально. Я могу исключить все журналы, используя префикс .*. Я изо всех сил пытаюсь исключить регулярное выражение прежде всего. Я попробовал регулярное выражение вида "^.*(pod_manager|base|base_aws|logging_mixin).*$", это удалит только название задачи, но кроме этих слов в логах будет присутствовать вся строка. Это регулярное выражение выглядит нормально? я делаю какую-либо ошибку?

suresh choudhary 20.02.2023 08:29

Кажется, ваше регулярное выражение тоже в порядке, и вы можете попробовать его один раз. Если это не работает, вы можете использовать отрицательное утверждение, как показано ниже: "^.*(?!pod_manager|base|base_aws|logging_mixin).*$". Обратитесь к этому Регулярное выражение для исключения слова/строки и Как исключить конкретную строковую константу? для получения дополнительной информации.

Hemanth Kumar 20.02.2023 10:27

Нет, эти шаблоны регулярных выражений также не работают. Когда я делаю exclude_all или include_all, он работает, но с любым шаблоном он не работает.

suresh choudhary 20.02.2023 10:41
Как подобрать выигрышные акции с помощью анализа и визуализации на Python
Как подобрать выигрышные акции с помощью анализа и визуализации на Python
Отказ от ответственности: Эта статья предназначена только для демонстрации и не должна использоваться в качестве инвестиционного совета.
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
Потяните за рычаг выброса энергососущих проектов
Потяните за рычаг выброса энергососущих проектов
На этой неделе моя команда отменила проект, над которым я работал. Неделя усилий пошла насмарку.
Инструменты для веб-скрапинга с открытым исходным кодом: Python Developer Toolkit
Инструменты для веб-скрапинга с открытым исходным кодом: Python Developer Toolkit
Веб-скрейпинг, как мы все знаем, это дисциплина, которая развивается с течением времени. Появляются все более сложные средства борьбы с ботами, а...
Библиотека для работы с мороженым
Библиотека для работы с мороженым
Лично я попрощался с операторами print() в python. Без шуток.
Эмиссия счетов-фактур с помощью Telegram - Python RPA (BotCity)
Эмиссия счетов-фактур с помощью Telegram - Python RPA (BotCity)
Привет, люди RPA, это снова я и я несу подарки! В очередном моем приключении о том, как создавать ботов для облегчения рутины. Вот, думаю, стоит...
0
10
73
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Чтобы отправить в Datadog только определенное подмножество журналов, используйте параметр log_processing_rules в файле конфигурации с типом exclude_at_match или include_at_match. Примените это к своему расписанию, которое генерирует журналы. Обратитесь к этому официальному документу Datadog для получения дополнительной информации.

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

Hemanth Kumar 20.02.2023 10:34

Другие вопросы по теме