Я пытаюсь представить метрики синхронизации для prometheus из API, реализованного с помощью Spring Boot 2. Я включил следующие зависимости.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
Я управляю зависимостями с помощью Spring-cloud-starter- родительский Finchley.SR1, который дает мне версии 2.0.4.RELEASE для привода с пружинной загрузкой и привода, и 1.0.6 для микрометра-реестра-прометея.
Работает конечная точка / actator / prometheus и достижимо, но необходимые мне показатели не включены. Когда я смотрю на / acutator / metrics, metri c "http.server.requests" там нет в списке:
{
"names": [
"jvm.memory.max",
"cache.eviction.weight",
"cache.gets",
"process.files.max",
"jvm.gc.memory.promoted",
"tomcat.cache.hit",
"system.load.average.1m",
"tomcat.cache.access",
"jvm.memory.used",
"jvm.gc.max.data.size",
"jvm.gc.pause",
"jvm.memory.committed",
"system.cpu.count",
"logback.events",
"tomcat.global.sent",
"jvm.buffer.memory.used",
"tomcat.sessions.created",
"jvm.threads.daemon",
"system.cpu.usage",
"jvm.gc.memory.allocated",
"tomcat.global.request.max",
"tomcat.global.request",
"tomcat.sessions.expired",
"jvm.threads.live",
"jvm.threads.peak",
"tomcat.global.received",
"process.uptime",
"cache.puts",
"cache.size",
"cache.evictions",
"tomcat.sessions.rejected",
"process.cpu.usage",
"tomcat.threads.config.max",
"jvm.classes.loaded",
"jvm.classes.unloaded",
"tomcat.global.error",
"tomcat.sessions.active.current",
"tomcat.sessions.alive.max",
"jvm.gc.live.data.size",
"tomcat.servlet.request.max",
"tomcat.threads.current",
"tomcat.servlet.request",
"process.files.open",
"jvm.buffer.count",
"jvm.buffer.total.capacity",
"tomcat.sessions.active.max",
"tomcat.threads.busy",
"process.start.time",
"tomcat.servlet.error"
]
}
Согласно документации, и все, что я могу найти в поиске в Google, должно быть одна из метрик, которая автоматически настраивается "из коробки".
Я пробовал это с установленным в true свойством spring.metrics.web.server.auto-time-запросы, а также с аннотациями @Timed на конечной точке, с которой я тестирую, и в любом случае я ничего не получаю.
Я нашел эту решенную проблему, в которой у кого-то были такие же симптомы, но они использовали весеннюю загрузку 1.5, и их проблема была ненужной дополнительной зависимостью, которая У меня нет:
Конечная точка привода / метрики не включает http.server.requests
Любая идея, что может привести к тому, что привод не будет открывать http.server.requests metri c?
Я должен добавить, что у меня есть 6 других сервисов, таких как этот, в которых метрики работают как положено, так что это только один из 7, где он не работает. Я не могу понять, что отличается от этого. Я даже пытался разобрать его, чтобы удалить все зависимости, которых нет и в других шести, но все же эта не сообщит о том, что metri c.