Если вы хотите измерить время для методов / вызовов Web-flux, вы можете легко использовать метрики непосредственно из Flux / Mono (плюс настроить свой проект для экспорта метрик, например, для графита)
Пример выглядит так
Flux<String> dataStream = Flux.just("AA", "BB", "CC", "DD");
dataStream.name("my-test-name").tag("key1", "value1").metrics().subscribe(p ->
{
System.out.println("Hello " + p);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
});
Тогда в моем случае метрики в графите находятся, например, под application-name.magdalena. Reaction.flow.duration.exception.flow.my-test-name.status.completed.type.Flux.p50 p50 - это задержка для половины запросов (или задержка p98 для 98% от запроса). Благодаря искусственной задержке в этом примере вы можете заметить, что их значения близки к 4000 (обработано 1 с x 4 элемента).
Конфигурация в application.yml для графита:
management:
metrics:
export:
graphite:
enabled: true
host: graphite-lhr10.something.com
port: 2003
protocol: plaintext
Аннотации @Timed у меня тоже не сработали.
person
m.a.tomsik
schedule
10.05.2019
metrics()
, который собирает и публикует метрики о продолжительности, прошедшей между подпиской и завершением последовательности onComplete в Micrometer. Вы пробовали это? - person Ilya Zinkovich   schedule 23.10.2018