voonhous opened a new issue, #19472:
URL: https://github.com/apache/hudi/issues/19472

   ### Describe the problem
   
   The [AWS CloudWatchReporter 
section](https://hudi.apache.org/docs/metrics#aws-cloudwatchreporter) of
   the metrics page explains how to turn the reporter on and how to supply 
credentials, but never says
   which artifact provides the reporter class.
   
   The class ships in the optional `hudi-aws` module and is loaded reflectively 
by
   `MetricsReporterFactory`. `packaging/hudi-spark-bundle/pom.xml` does not 
shade `hudi-aws`, while
   `hudi-flink-bundle` and `hudi-kafka-connect-bundle` do. So a Spark user who 
follows the docs, sets
   `hoodie.metrics.reporter.type=CLOUDWATCH`, and has only the Spark bundle on 
the classpath cannot load
   `org.apache.hudi.aws.metrics.cloudwatch.CloudWatchMetricsReporter`, and the 
docs give no hint that a
   second jar is required.
   
   ### Proposed fix
   
   Add a short note to the AWS CloudWatchReporter section naming the `hudi-aws` 
module, the fact that not
   every engine bundle shades it, and the `hudi-aws-bundle` remedy. The website 
source lives on the
   `asf-site` branch, so this is a separate PR from any code change; it applies 
to
   `website/docs/metrics.md` and 
`website/versioned_docs/version-1.2.0/metrics.md`.
   
   ### Relationship to other issues
   
   - #15293 is the parent complaint. #19418 addresses the runtime half of it, 
turning the unactionable
     `Unable to load class` into an error that names the missing class and the 
bundle to add. This issue
     is the prevention half: a user who reads the docs first never reaches that 
error.
   - Not covered by this: #12182 and #13051 are an 
`ArrayIndexOutOfBoundsException` inside
     `CloudWatchReporter.stageMetricDatum`, where the reporter loads and then 
fails while publishing.
     #12902 reports `Unable to instantiate class`, which comes from the 
constructor branch of
     `ReflectionUtils.loadClass` and so means the class resolved but 
construction failed, most likely
     relocation skew rather than a missing artifact. All three are separate 
defects.
   


-- 
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]

Reply via email to