Skip to content

Add S3RemoteLogIO.from_config and register s3 remote logging scheme#69817

Draft
jason810496 wants to merge 1 commit into
apache:mainfrom
jason810496:feature/logging/s3-remote-log-io-from-config
Draft

Add S3RemoteLogIO.from_config and register s3 remote logging scheme#69817
jason810496 wants to merge 1 commit into
apache:mainfrom
jason810496:feature/logging/s3-remote-log-io-from-config

Conversation

@jason810496

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 s3 scheme as the first adopter.

What

  • Add S3RemoteLogIO.from_config(), mirroring the legacy airflow_local_settings.py branch — including the [logging] remote_task_handler_kwargs IO-kwargs merge and expanduser on base_log_folder, so behavior is unchanged for existing configs.
  • Register the s3 scheme in the amazon provider.yaml remote-logging: section (with regenerated get_provider_info.py).

A sibling PR migrates the cloudwatch scheme the same way; 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?

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 s3
scheme as the first adopter.
@jason810496 jason810496 force-pushed the feature/logging/s3-remote-log-io-from-config branch from d883134 to bb01bb5 Compare July 13, 2026 14:57
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.

1 participant