如何使用千分尺测量每秒的 http 请求数

How to measure http requests per second using micrometer

我们有一个使用 vert.x 开发的休息服务,每秒钟都有大量请求。我将 StatsdMeterRegistry 用于其他指标,例如 Timer,以衡量处理不同业务逻辑所采取的措施。我如何使用千分尺测量每秒发出的 http 请求。在我的本地我已经安装了 statsd 代理和 carbon/graphite/whisper 但在生产中它将是 statsd 和 sysdig。不使用 spring 框架或 spring 启动。我不能在内置的千分尺支持中使用 vertx,因为它不支持 statsd。 Micrometer 是否为 http 请求速率提供内置 Meters。或者您可以建议的任何其他方式。

Micrometer 是度量的简单外观。您应该能够利用内置的千分尺支持,只需插入正确的后端即可。

以下是创建 statsd 注册表并将其注册到 vertx 的方法:

StatsdConfig config = new StatsdConfig() {
    @Override
    public String get(String k) {
        return null;
    }


    @Override
    public StatsdFlavor flavor() {
        return StatsdFlavor.Etsy;
    }
};

MeterRegistry registry = new StatsdMeterRegistry(config, Clock.SYSTEM);

Vertx vertx = Vertx.vertx(new VertxOptions()
  .setMetricsOptions(new MicrometerMetricsOptions()
    .setMicrometerRegistry(registry)
    .setEnabled(true)));

文档: http://micrometer.io/docs/registry/statsD#_configuring and https://vertx.io/docs/vertx-micrometer-metrics/java/#_other_backends_or_combinations