Ваш подход практически правильный, но есть несколько изменений, которые нужно внести.
Вместо использования `DistributionSummary`, вам следует использовать `Counter`, чтобы отслеживать количество вызовов в определенный промежуток времени.
Вот как вы можете это сделать:
```java
Counter counter = Counter.builder("test")
.register(meterRegistry);
// Ваша логика вызова метода, которую вы хотите отслеживать
public void yourMethod() {
// увеличиваем счетчик на единицу при каждом вызове метода
counter.increment();
}
```
Теперь для сброса метрики каждые пять секунд вам потребуется использовать планировщик или асинхронный механизм для установления значения счетчика обратно в 0.
С использованием `ScheduledExecutorService` вы можете сделать это следующим образом:
```java
ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
executorService.scheduleAtFixedRate(() -> {
// устанавливаем значение счетчика обратно в 0
counter.increment(-counter.count());
}, 5, 5, TimeUnit.SECONDS);
```
Теперь каждые пять секунд значение счетчика будет сброшено обратно в 0.
И не забудьте выключить планировщик после завершения вашего приложения:
```java
executorService.shutdown();
```
Надеюсь, это поможет вам решить вашу проблему.