All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.landoop.lenses.topology.client.pulsar.metrics.ConsumerMetricsBuilder Maven / Gradle / Ivy

package com.landoop.lenses.topology.client.pulsar.metrics;

import com.landoop.lenses.topology.client.metrics.Metrics;
import com.landoop.lenses.topology.client.metrics.MetricsBuilder;
import org.apache.pulsar.client.api.Consumer;

public class ConsumerMetricsBuilder implements MetricsBuilder {

    private final Consumer consumer;

    public ConsumerMetricsBuilder(Consumer consumer) {
        this.consumer = consumer;
    }

    @Override
    public Metrics build(String appName, String topic) {
        Metrics metrics = new Metrics(appName, topic);
        metrics.setMessagesReceivedPerSecond(consumer.getStats().getRateMsgsReceived());
        metrics.setMessageReceivedTotal(consumer.getStats().getTotalMsgsReceived());
        metrics.setBytesReceivedPerSecond(consumer.getStats().getRateBytesReceived());
        return metrics;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy