Class HttpForwardingMetricsConsumer

  • All Implemented Interfaces:
    IMetricsConsumer

    public class HttpForwardingMetricsConsumer
    extends Object
    implements IMetricsConsumer
    Listens for all metrics and POSTs them serialized to a configured URL.

    To use, add this to your topology's configuration: ```java conf.registerMetricsConsumer(HttpForwardingMetricsConsumer.class, "http://example.com:8080/metrics/my-topology/", 1); ```

    The body of the post is data serialized using KryoValuesSerializer, with the data passed in as a list of `[TaskInfo, Collection<DataPoint>]`. More things may be appended to the end of the list in the future.

    The values can be deserialized using the org.apache.storm.serialization.KryoValuesDeserializer, and a correct config + classpath.

    @see org.apache.storm.serialization.KryoValuesSerializer