airflow.providers.amazon.aws.log.cloudwatch_task_handler
¶
Module Contents¶
Classes¶
CloudwatchTaskHandler is a python log handler that handles and reads task instance logs. |
Functions¶
|
JSON serializer replicating legacy watchtower behavior. |
|
JSON serializer replicating current watchtower behavior. |
- airflow.providers.amazon.aws.log.cloudwatch_task_handler.json_serialize_legacy(value)[source]¶
JSON serializer replicating legacy watchtower behavior.
The legacy watchtower@2.0.1 json serializer function that serialized datetime objects as ISO format and all other non-JSON-serializable to null.
- Parameters
value (Any) – the object to serialize
- Returns
string representation of value if it is an instance of datetime or None otherwise
- Return type
str | None
- airflow.providers.amazon.aws.log.cloudwatch_task_handler.json_serialize(value)[source]¶
JSON serializer replicating current watchtower behavior.
This provides customers with an accessible import, airflow.providers.amazon.aws.log.cloudwatch_task_handler.json_serialize
- Parameters
value (Any) – the object to serialize
- Returns
string representation of value
- Return type
str | None
- class airflow.providers.amazon.aws.log.cloudwatch_task_handler.CloudwatchTaskHandler(base_log_folder, log_group_arn, filename_template=None)[source]¶
Bases:
airflow.utils.log.file_task_handler.FileTaskHandler
,airflow.utils.log.logging_mixin.LoggingMixin
CloudwatchTaskHandler is a python log handler that handles and reads task instance logs.
It extends airflow FileTaskHandler and uploads to and reads from Cloudwatch.
- Parameters
base_log_folder (str) – base folder to store logs locally
log_group_arn (str) – ARN of the Cloudwatch log group for remote log storage with format
arn:aws:logs:{region name}:{account id}:log-group:{group name}
filename_template (str | None) – template for file name (local storage) or log stream name (remote)
- set_context(ti, *, identifier=None)[source]¶
Provide task_instance context to airflow task handler.
Generally speaking returns None. But if attr maintain_propagate has been set to propagate, then returns sentinel MAINTAIN_PROPAGATE. This has the effect of overriding the default behavior to set propagate to False whenever set_context is called. At time of writing, this functionality is only used in unit testing.
- Parameters
ti (airflow.models.TaskInstance) – task instance object
identifier (str | None) – if set, adds suffix to log file. For use when relaying exceptional messages to task logs from a context other than task or trigger run