airflow.providers.amazon.aws.log.cloudwatch_task_handler

模块内容

CloudwatchTaskHandler

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

函数

json_serialize_legacy(value)

JSON 序列化器,用于复制旧的 watchtower 行为。

json_serialize(value)

JSON 序列化器,用于复制当前的 watchtower 行为。

airflow.providers.amazon.aws.log.cloudwatch_task_handler.json_serialize_legacy(value)[源代码]

JSON 序列化器,用于复制旧的 watchtower 行为。

旧的 [email protected] JSON 序列化器函数,将 datetime 对象序列化为 ISO 格式,并将所有其他非 JSON 可序列化的对象序列化为 null

参数

value (Any) – 要序列化的对象

返回

如果 value 是 datetime 的实例,则返回 value 的字符串表示形式,否则返回 None

返回类型

str | None

airflow.providers.amazon.aws.log.cloudwatch_task_handler.json_serialize(value)[源代码]

JSON 序列化器,用于复制当前的 watchtower 行为。

这为客户提供了一个可访问的导入,即 airflow.providers.amazon.aws.log.cloudwatch_task_handler.json_serialize

参数

value (Any) – 要序列化的对象

返回

value 的字符串表示形式

返回类型

str | None

class airflow.providers.amazon.aws.log.cloudwatch_task_handler.CloudwatchTaskHandler(base_log_folder, log_group_arn, **kwargs)[源代码]

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

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

它扩展了 airflow FileTaskHandler,并上传到 Cloudwatch 以及从中读取。

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

  • log_group_arn (str) – 用于远程日志存储的 Cloudwatch 日志组的 ARN,格式为 arn:aws:logs:{region name}:{account id}:log-group:{group name}

trigger_should_wrap = True[源代码]
hook()[源代码]

返回 AwsLogsHook。

set_context(ti, *, identifier=None)[源代码]

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

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

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

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

close()[源代码]

关闭负责将本地日志文件上传到 Cloudwatch 的处理程序。

get_cloudwatch_logs(stream_name, task_instance)[源代码]

从给定的日志流返回所有日志。

参数
  • stream_name (str) – 要从中获取所有日志的 Cloudwatch 日志流的名称

  • task_instance (airflow.models.TaskInstance) – 要获取其日志的任务实例

返回

来自给定日志流的所有日志的字符串

返回类型

str

这个条目是否有帮助?