airflow.providers.amazon.aws.hooks.logs

属性

NUM_CONSECUTIVE_EMPTY_RESPONSE_EXIT_THRESHOLD

AwsLogsHook

与 Amazon CloudWatch Logs 交互。

模块内容

airflow.providers.amazon.aws.hooks.logs.NUM_CONSECUTIVE_EMPTY_RESPONSE_EXIT_THRESHOLD = 3[source]
class airflow.providers.amazon.aws.hooks.logs.AwsLogsHook(*args, **kwargs)[source]

基类: airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook

与 Amazon CloudWatch Logs 交互。

提供围绕 boto3.client("logs") 的轻量级包装器。

可以指定附加参数(例如 aws_conn_id),这些参数会传递到底层 AwsBaseHook。

class ContinuationToken[source]

只是一个围绕 str token 的包装器,允许调用者更新它。

value: str | None = None[source]
get_log_events(log_group, log_stream_name, start_time=0, skip=0, start_from_head=None, continuation_token=None, end_time=None)[source]

返回单个流中日志项的生成器;生成当前时刻所有可用的项。

参数:
  • log_group (str) – 日志组的名称。

  • log_stream_name (str) – 特定流的名称。

  • start_time (int) – 开始读取日志的时间戳值(毫秒)(默认值: 0)。

  • skip (int) – 开始时跳过的日志条目数(默认值: 0)。这用于同一时间戳有多个条目的情况。

  • continuation_token (ContinuationToken | None) – 指示从何处读取日志的 token。此方法读取新日志时会更新此 token,以便在后续调用中重用。

  • end_time (int | None) – 停止读取日志的时间戳值(毫秒)(默认值: None)。如果提供 None,则读取直到日志流结束。

返回:

具有以下键值对的 CloudWatch 日志事件
’timestamp’ (int): 事件的时间(毫秒)。
’message’ (str): 日志事件数据。
’ingestionTime’ (int): 事件被摄取的时间(毫秒)。

返回类型:

collections.abc.Generator

async describe_log_streams_async(log_group, stream_prefix, order_by, count)[source]

异步函数,用于获取指定日志组的日志流列表。

您可以列出所有日志流或按前缀过滤结果。您还可以控制结果的排序方式。

参数:
  • log_group (str) – 日志组的名称。

  • stream_prefix (str) – 要匹配的前缀。

  • order_by (str) – 如果值为 LogStreamName,则结果按日志流名称排序。如果值为 LastEventTime,则结果按事件时间排序。默认值为 LogStreamName。

  • count (int) – 返回的最大条目数

async get_log_events_async(log_group, log_stream_name, start_time=0, skip=0, start_from_head=True)[source]

生成单个日志流中的所有可用项。

参数:
  • log_group (str) – 日志组的名称。

  • log_stream_name (str) – 特定流的名称。

  • start_time (int) – 开始读取日志的时间戳值(默认值: 0)。

  • skip (int) – 开始时跳过的日志条目数(默认值: 0)。这用于同一时间戳有多个条目的情况。

  • start_from_head (bool) – 是否从日志的开头 (True) 开始读取或从日志的末尾 (False) 开始读取。

此条目有帮助吗?