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)[source]

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

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

它扩展了 airflow FileTaskHandler,并上传日志到 Redis 和从 Redis 读取日志。

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

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

  • ttl_seconds (int) – 要存储日志的最大秒数。如果省略,则相当于 28 天。

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

trigger_should_wrap = True[source]
handler: _RedisHandler | None = None[source]
max_lines = 10000[source]
ttl_seconds = 2419200[source]
conn_id[source]
property conn[source]
set_context(ti, **kwargs)[source]

为 Airflow 任务处理器提供任务实例上下文。

通常返回 None。但如果属性 maintain_propagate 被设置为 propagate,则返回哨兵值 MAINTAIN_PROPAGATE。这将覆盖在调用 set_context 时将 propagate 设置为 False 的默认行为。截至撰写本文时,此功能仅用于单元测试。

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

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

此条目有帮助吗?