Я пытаюсь сделать очень простое измерение производительности некоторых из моих API, чтобы определить, сколько времени они занимают. Я добавил тестовый ресурс:метрики dropwizard и время API
private static final MetricRegistry metrics = new MetricRegistry();
private final Timer responses = metrics.timer("test_responses");
@GET
public void test() {
final Timer.Context context = responses.time();
try {
log.info("sleeping...");
Thread.sleep(10*1000);
} catch (InterruptedException e) {
} finally {
context.stop();//2
}
}
и добавил folllowing к моему основному классу Application:
ConsoleReporter reporter = ConsoleReporter.forRegistry(metrics).convertRatesTo(TimeUnit.SECONDS).convertDurationsTo(TimeUnit.MILLISECONDS).build();
reporter.start(10, TimeUnit.SECONDS);
Каждые десять секунд я вижу:
6/13/16 11: 38:51 AM = = = = = ==============
6/13/16 11:39:01 AM ===================== ==============================
Но ничего о метрике «test_responses» я не создал. Любая помощь очень ценится!
ли вы вызываете свой метод испытания? – pandaadb