之前在healthcheck中介绍了如何通过metrics lib往系统中加入一些简单的健康侦测,现在讲讲dropwizard metrics更重要的部分,记录系统的度量信息。dropwizard提供了多种度量方式:最简单记数counter,复杂点的有用于计算时间分布的histogram,用于计算速率的meter,以及同时有histogram和meter功能的timer。有兴趣可以去看看实现细节,类很少,很容易读懂。
Metrics的报告方式和healthcheck非常类似,库自生提供的各种报告渠道。也可以很容易自己扩展。
Metrics提供了各种包,可以帮助简化开发。其中metrics-servlet可以直接把metrics和healthcheck的信息在web request里面展示出来。
接下来给个使用的例子,对Web应用的请求进行度量,然后通过AdminServlet获取metrics和healthcheck信息。
- 在maven中导入需要的包
<dependency>
<groupId>io.dropwizard.metrics</groupId>
<artifactId>metrics-core</artifactId>
<version>${metrics.version}</version>
</dependency>
<dependency>
<groupId>io.dropwizard.metrics</groupId>
<artifactId>metrics-servlets</artifactId>
<version</