JStorm自定义Metric的简单步骤

简单介绍

可以在JStorm的控制台看见。
在这里插入图片描述
和常见的java metrics系统一样,支持

  • Counter:累计值
  • Gauge:瞬时值
  • Histogram:瞬时值的分布

使用

public class MyBolt extends BaseBasicBolt {

    private MetricClient metricClient;
    private AsmCounter myCounter;

    @Override
    public void prepare(Map stormConf, TopologyContext context) {
        metricClient = new MetricClient(context);
        myCounter = metricClient.registerCounter("myCounter");
    }

    public void execute(Tuple input, BasicOutputCollector collector) {
        Object value = input.getValueByField("value");
        myCounter.inc();
        if(value instanceof UmetripEvent){
            System.out.println("RECEIVE");
            UmetripEvent event = (UmetripEvent)value;

        }
       //throw new FailedException("manual fail");


    }

    public void declareOutputFields(OutputFieldsDeclarer declarer) {
        declarer.declare(new Fields("EVENT"));
    }


}

猜你喜欢

转载自blog.csdn.net/define_us/article/details/84783469