airflow.providers.alibaba.cloud.log.oss_task_handler

OSSRemoteLogIO

方便的超类,用于配置带有类名的记录器。

OSSTaskHandler

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

模块内容

class airflow.providers.alibaba.cloud.log.oss_task_handler.OSSRemoteLogIO(context=None)[source]

基类: airflow.utils.log.logging_mixin.LoggingMixin

方便的超类,用于配置带有类名的记录器。

base_log_folder: pathlib.Path[source]
remote_base: str = ''[source]
delete_local_copy: bool = True[source]
processors = ()[source]
upload(path, ti)[source]

将给定的日志路径上传到远程存储。

property base_folder[source]
property bucket_name[source]
property hook[source]
read(relative_path, ti)[source]
oss_log_exists(remote_log_location)[source]

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

参数:

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

返回:

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

oss_read(remote_log_location, return_error=False)[source]

返回 remote_log_location 处的日志,如果找不到日志或发生错误则返回 ''。

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

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

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

将日志写入 remote_log_location 并返回 True;静默失败并在发生错误时返回 False。

参数:
  • log – 要写入 remote_log_location 的日志

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

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

返回:

日志是否成功写入远程位置。

返回类型:

bool

class airflow.providers.alibaba.cloud.log.oss_task_handler.OSSTaskHandler(base_log_folder, oss_log_folder, **kwargs)[source]

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

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

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

log_relative_path = ''[source]
closed = False[source]
upload_on_close : bool = True[source]
delete_local_copy[source]
io[source]
set_context(ti)[source]

设置处理器的上下文。

close()[source]

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

此条目是否有帮助?