airflow.providers.redis.log.redis_task_handler

模块内容

RedisTaskHandler

RedisTaskHandler 是一个 Python 日志处理程序,用于处理和读取任务实例日志。

class airflow.providers.redis.log.redis_task_handler.RedisTaskHandler(base_log_folder, max_lines=10000, ttl_seconds=60 * 60 * 24 * 28, conn_id=None)[源代码]

基类:airflow.utils.log.file_task_handler.FileTaskHandler, airflow.utils.log.logging_mixin.LoggingMixin

RedisTaskHandler 是一个 Python 日志处理程序,用于处理和读取任务实例日志。

它扩展了 airflow FileTaskHandler 并上传到 Redis 并从中读取。

参数
  • base_log_folder (str) – 在本地存储日志的基本文件夹

  • max_lines (int) – 要存储的最大日志行数。如果省略,则为 10000。

  • ttl_seconds (int) – 存储日志的最大秒数。如果省略,则为 28 天的等效值。

  • conn_id (str | None) – 用于 Redis hook 的 Airflow 连接 ID。如果省略或为 None,则使用选项 logging.remote_log_conn_id 中指定的 ID。

trigger_should_wrap = True[源代码]
conn()[源代码]
set_context(ti, **kwargs)[源代码]

为 airflow 任务处理程序提供 task_instance 上下文。

一般来说,返回 None。但是,如果属性 maintain_propagate 已设置为传播,则返回哨兵 MAINTAIN_PROPAGATE。这具有覆盖默认行为的效果,即在每次调用 set_context 时将 propagate 设置为 False。在编写本文时,此功能仅在单元测试中使用。

参数
  • ti (airflow.models.TaskInstance) – 任务实例对象

  • identifier – 如果设置,则将后缀添加到日志文件中。用于在来自任务或触发器运行以外的上下文时将异常消息中继到任务日志

此条目有帮助吗?