Skip to content

Add CloudWatchRemoteLogIO.from_config and register cloudwatch scheme#69816

Merged
jason810496 merged 1 commit into
apache:mainfrom
jason810496:feature/logging/cloudwatch-remote-log-io-from-config
Jul 22, 2026
Merged

Add CloudWatchRemoteLogIO.from_config and register cloudwatch scheme#69816
jason810496 merged 1 commit into
apache:mainfrom
jason810496:feature/logging/cloudwatch-remote-log-io-from-config

Conversation

@jason810496

@jason810496 jason810496 commented Jul 13, 2026

Copy link
Copy Markdown
Member

Why

#67056 decoupled remote logging from the hardcoded branches in airflow_local_settings.py: core and the Task SDK now resolve the handler via ProvidersManager dispatch on the [logging] remote_base_log_folder URL scheme, instantiating the provider class through a no-arg from_config() classmethod. This migrates the cloudwatch scheme.

What

  • Add CloudWatchRemoteLogIO.from_config(), mirroring the legacy airflow_local_settings.py branch -- parsing log_group_arn from the URL (with a clear ValueError when no ARN can be derived), merging [logging] remote_task_handler_kwargs IO-kwargs, and applying expanduser on base_log_folder, so behavior is unchanged for existing configs.
  • Register thecloudwatch scheme in the amazon get_provider_info.py.

Note

A sibling PR migrates the s3 scheme the same way (#69817); whichever merges second needs a trivial rebase of the new remote-logging: section. If from_config raises on a bad config, the shared factory falls back to the legacy path, so this is not a breaking change.


Was generative AI tooling used to co-author this PR?

@jason810496 jason810496 self-assigned this Jul 13, 2026
@jason810496
jason810496 force-pushed the feature/logging/cloudwatch-remote-log-io-from-config branch from 3bc65bd to be6fb4a Compare July 13, 2026 14:57
Airflow resolves remote task log handlers through provider dispatch on
the remote_base_log_folder URL scheme since apache#67056; providers must
expose from_config so core and the Task SDK no longer depend on the
hardcoded branches in airflow_local_settings.py. This migrates the
cloudwatch scheme.
@jason810496
jason810496 force-pushed the feature/logging/cloudwatch-remote-log-io-from-config branch from be6fb4a to 55a1121 Compare July 18, 2026 13:29
@jason810496
jason810496 marked this pull request as ready for review July 18, 2026 13:29
@jason810496
jason810496 requested a review from o-nikolas as a code owner July 18, 2026 13:29

@ferruzzi ferruzzi left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants