airflow.providers.microsoft.azure.log.wasb_task_handler

模块内容

WasbTaskHandler

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

class airflow.providers.microsoft.azure.log.wasb_task_handler.WasbTaskHandler(base_log_folder, wasb_log_folder, wasb_container, **kwargs)[source]

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

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

它扩展了 airflow FileTaskHandler,并上传到 Wasb 远程存储并从中读取。

trigger_should_wrap = True[source]
hook()[source]

返回 WasbHook。

set_context(ti, *, identifier=None)[source]

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

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

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

  • identifier (str | None) – 如果设置,则将后缀添加到日志文件。用于从任务或触发器运行之外的上下文中向任务日志中继异常消息时

close()[source]

关闭并将本地日志文件上传到远程存储 Wasb。

wasb_log_exists(remote_log_location)[source]

检查远程存储中是否存在 remote_log_location。

参数

remote_log_location (str) – 日志在远程存储中的位置

返回

如果位置存在则返回 True,否则返回 False

返回类型

bool

wasb_read(remote_log_location, return_error=False)[source]

返回在 remote_log_location 找到的日志。如果没有找到日志或出现错误,则返回 ‘’。

参数
  • remote_log_location (str) – 日志在远程存储中的位置

  • return_error (bool) – 如果为 True,则在发生错误时返回字符串错误消息。否则,在发生错误时返回 ''。

wasb_write(log, remote_log_location, append=True)[source]

将日志写入 remote_log_location。如果没有创建钩子,则会静默失败。

参数
  • log (str) – 要写入 remote_log_location 的日志

  • remote_log_location (str) – 日志在远程存储中的位置

  • append (bool) – 如果为 False,则覆盖任何现有日志文件。如果为 True,则将新日志附加到任何现有日志。

此条目是否有帮助?