jason810496 opened a new pull request, #70921:
URL: https://github.com/apache/airflow/pull/70921
Each provider can register a remote-logging handler in its ``provider.yaml``:
```yaml
remote-logging:
- classpath: airflow.providers.amazon.aws.log.s3_task_handler.S3RemoteLogIO
scheme: s3
```
The ``scheme`` decides which provider's ``RemoteLogIO`` handler serves a
user's
task logs when they set ``[logging] remote_base_log_folder = <scheme>://``.
At
runtime ``ProvidersManager._discover_remote_logging`` resolves a scheme
collision *silently*: providers are iterated in alphabetical order, the first
one to claim a scheme wins, and every later registration for that scheme is
dropped with only a ``log.warning``. Nothing catches the clash before it
ships —
two providers can register the same scheme and quietly shadow each other, and
which handler wins depends only on package-name ordering.
This adds a static detector on that surface.
``check_remote_logging_scheme_duplicates``
in the provider-yaml static check collects every ``remote-logging``
``scheme``
across all ``providers/*/provider.yaml`` files and fails the check when a
scheme
is registered by more than one provider, printing a table of the offending
scheme and the providers that claim it. It follows the same pattern as the
existing ``check_integration_duplicates`` global-uniqueness guard.
No collisions exist on ``main`` today (schemes: ``cloudwatch``,
``elasticsearch``,
``gs``, ``oss``, ``s3``, ``stackdriver``, ``wasb``), so the check passes
as-is;
it only fires when a future PR introduces a duplicate.
CI-tooling change only — no user-facing behaviour changes.
---
##### Was generative AI tooling used to co-author this PR?
- [x] Yes (please specify the tool below)
- Opus 4.8
Generated-by: Opus 4.8 following [the
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]