我该怎么做相同的:
@Override
public void init(final ServletConfig config) throws ServletException {
super.init(config);
CsvReporter.enable(new File("/tmp/measurements"), 1, TimeUnit.MINUTES);
GraphiteReporter.enable(1, TimeUnit.MINUTES, "my.host.name", 2003);
}
@Override
protected void doGet(final HttpServletRequest req,
final HttpServletResponse resp) throws ServletException,
IOException {
final TimerContext timerContext = Metrics.newMeter(CreateSessionServlet.class,"myservlet-meter", "requests", TimeUnit.SECONDS).time();
try {
...
} finally {
timerContext.stop();
}
有here提到的弹簧注释和codahale指标?
我认为这很简单:
- 像这样注释我的servlet(我最终需要量表和计量):
@Timed
@Gauge
@Metered
@Override
protected void doGet(final HttpServletRequest req,
final HttpServletResponse resp) throws ServletException, IOException {
- 更新我的spring-servlet以启用弹簧注释,如上面提到的页面所述。
但是当我使用jconsole时,我没有在MBeans部分中看到我检测到的servlet的任何其他条目,而不是其他不使用任何注释的servlet的条目
所以我的两个问题:
我有什么遗漏,以便我的网络应用程序实际通过JMX发送指标数据吗?
如果我希望带弹簧注释的代码开始报告CSV文件或石墨,我需要添加什么?
令人惊讶的是,我在网上或codahale的文档中找不到完整的例子。
答案 0 :(得分:-1)
不幸的是,指标仅基于AOP,因此它只能用于公共方法