为什么气流日志重复

时间:2020-10-04 19:18:16

标签: python-3.x logging duplicates airflow

使用气流1.10.4 配置的登录文件名-captains_log.py

   LOG_FORMAT_S = ('pid %(process)d - %(asctime)s - %(levelname)s - '
                    '%(filename)s - %(funcName)s - line %(lineno)d - '
                    '%(message)s')

   lgr = logging.getLogger(LOGGER_NAME)
   lgr.setLevel(10)
   stream_handler = logging.StreamHandler()
   stream_handler.setFormatter(logging.Formatter(LOG_FORMAT_S))
   lgr.addHandler(stream_handler)

   def info(msg, **kwargs):
        lgr.info(msg=msg, extra=kwargs)

当我在本地运行时:

log_ = captains_log
log_.info(msg="this is a test for log_.info")

它返回:pid 91955 - 2020-10-04 22:08:58,511 - INFO - captains_log.py - info - line 73 - this is a test for log_.info

但是在气流日志中它会打印两次,但是只有一个与这样的日志格式匹配:

[2020-10-04 20:59:28,094] {base_task_runner.py:115} INFO - Job 250085: Subtask test_py_operator pid 941 - 2020-10-04 20:59:28,093 - INFO - captains_log.py - info - line 73 - this is a test for log_.info
[2020-10-04 20:59:28,094] {logging_mixin.py:95} INFO - [2020-10-04 20:59:28,093] {captains_log.py:73} INFO - this is a test for log_.info

关于我应该做些什么以仅获取一次日志的任何想法?

也许我应该提到我刚刚从python 2.7和airflow 1.7迁移而来,这个问题在旧版本中不存在

谢谢!

0 个答案:

没有答案