Добавить в файл openapi здоровье и метрики объектов helidon
Я писал файл openapi.yml
с описанием служб openapi 3.0 в моем проекте helidon. Но я тоже использую стандартные обработчики helidon (здоровье и метрики):
return Routing.builder()
.register(JsonSupport.create())
.register("/api/files", health)
.register("/api/files", metrics)
.register("/api/files/storage", fileService)
.register("/api/files", OpenAPISupport.create(config))
.build();
Как сделать в моем openapi.yml раздел здоровья и метрик? Я использую:
<dependency>
<groupId>io.helidon.openapi</groupId>
<artifactId>helidon-openapi</artifactId>
<version>1.3.1</version>
</dependency>
1 ответ
Решение
Это можно сделать двумя способами:
- Просто добавьте
/health
а также/metrics
информация о конечных точках дляopenapi.yml
файл, который вы уже создали. - Добавьте свою собственную реализацию MicroProfile OpenAPI
OASModelReader
интерфейс к вашему приложению, который программно добавляет информацию о работоспособности и показателях. Вы также устанавливаете значение конфигурации, чтобы сообщить системе о вашей реализации. Подробнее см. https://helidon.io/docs/latest/index.html.
К сожалению, в настоящее время нет автоматического способа добавить информацию OpenAPI о работоспособности и показателях в документ OpenAPI вашего приложения.
Дополнительная информация (похоже, я неправильно истолковал исходный вопрос):
В /metrics
а также /health
конечные точки реализуются Helidon, но спецификации MicroProfile Metrics и Health определяют пути и поведение этих конечных точек.
Некоторые соответствующие документы для начала:
метрики:
- архитектура: https://github.com/eclipse/microprofile-metrics/blob/2.3.2/spec/src/main/asciidoc/architecture.adoc
- Конечные точки REST: https://github.com/eclipse/microprofile-metrics/blob/2.3.2/spec/src/main/asciidoc/rest-endpoints.adoc
здоровье: