I created an implementation IMetricsConsumer
and registered it in my topology through YAML as follows. Any custom metrics that I created in my own code are successfully passed to this user.
topology.metrics.consumer.register:
- class: "hnb.storm.metric.opentsdb.OpenTsdbMetricConsumer"
parallelism.hint: ${storm.topology.metrics.consumer.parallelism}
Unfortunately, other "external" metrics created outside of my code are never passed to this consumer. For example, I use storm.kafka.KafkaSpout
one that creates its own metric called kafkaOffset
using the same API. My consumer never gets this rate.
How to ensure that my consumer receives "external" indicators, such as kafkaOffset
?
source
share