yadavay-amzn opened a new pull request, #16235: URL: https://github.com/apache/iceberg/pull/16235
Adds support for configuring a custom AWS SDK `MetricPublisher` for S3FileIO via the `s3.metrics-publisher-impl` catalog property. This enables observability into S3 SDK-level metrics (latency, retries, errors) for debugging and monitoring. ### Changes - **S3FileIOProperties**: Added `METRICS_PUBLISHER_IMPL` property, `applyMetricsPublisherConfiguration()` method that loads the publisher via static `create(Map)` factory or no-arg constructor fallback. - **DefaultS3FileIOAwsClientFactory**: Applied metrics publisher configuration to both sync `s3()` and async `s3Async()` client builders. - **Tests**: 4 parameterized tests covering factory method instantiation, no-arg constructor, disabled state, and invalid class error handling. - **Docs**: Added documentation section in `aws.md`. ### Usage ``` spark.sql.catalog.my_catalog.s3.metrics-publisher-impl=com.example.MyMetricPublisher ``` The class must implement `software.amazon.awssdk.metrics.MetricPublisher` and provide either a static `create(Map<String, String>)` factory method or a no-arg constructor. Closes #15182 -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
