我们有一个使用vert.x开发的REST服务,每秒钟都会收到大量请求。我将StatsdMeterRegistry用于其他指标(例如Timer)来衡量处理不同业务逻辑所采取的措施。我如何使用千分尺来衡量每秒发出的HTTP请求。我在本地安装了statsd代理和碳/石墨/耳语,但在生产中将使用statsd和sysdig。不使用spring框架或spring boot。我无法在内置对测微计的支持中使用vertx,因为它不支持statsd。千分尺是否为http请求速率提供内置的仪表。或您可以建议的任何其他方式。
答案 0 :(得分:1)
千分尺是度量标准的简单外观。您应该能够利用内置的千分尺支持,并且只需插入正确的后端即可。
这是创建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和https://vertx.io/docs/vertx-micrometer-metrics/java/#_other_backends_or_combinations