Spring Boot Actuator: поддерживаемые системы мониторинга
AppOptics
По умолчанию реестр AppOptics периодически отправляет метрики в api.appoptics.com/v1/measurements. Чтобы экспортировать метрики в SaaS AppOptics, необходимо предоставить свой токен API:
management.metrics.export.appoptics.api-token=YOUR_TOKEN
Atlas
По умолчанию метрики экспортируются в Atlas, работающий на вашем локальном компьютере. Расположение сервера Atlas для использования может быть предоставлено с помощью:
management.metrics.export.atlas.uri=https://atlas.example.com:7101/api/v1/publish
Datadog
Реестр Datadog периодически передает метрики в datadoghq. Чтобы экспортировать метрики в Datadog, необходимо предоставить ваш ключ API:
management.metrics.export.datadog.api-key=YOUR_KEY
Вы также можете изменить интервал отправки метрик в Datadog:
management.metrics.export.datadog.step=30s
Dynatrace
Реестр Dynatrace периодически передает метрики в настроенный URI. Для экспорта метрик в Dynatrace необходимо предоставить свой токен API, идентификатор устройства и URI:
management.metrics.export.dynatrace.api-token=YOUR_TOKEN
management.metrics.export.dynatrace.device-id=YOUR_DEVICE_ID
management.metrics.export.dynatrace.uri=YOUR_URI
Вы также можете изменить интервал отправки метрик в Dynatrace:
management.metrics.export.dynatrace.step=30s
Elastic
По умолчанию метрики экспортируются в Elastic на вашем локальном компьютере. Расположение сервера Elastic для использования можно указать с помощью следующего свойства:
management.metrics.export.elastic.host=https://elastic.example.com:8086
Ganglia
По умолчанию метрики экспортируются в Ganglia, работающий на вашем локальном компьютере. Хост сервера и порт Ganglia для использования могут быть предоставлены с использованием:
management.metrics.export.ganglia.host=ganglia.example.com
management.metrics.export.ganglia.port=9649
Graphite
По умолчанию метрики экспортируются в Graphite на вашем локальном компьютере. Хост и порт сервера Graphite для использования могут быть предоставлены с использованием:
management.metrics.export.graphite.host=graphite.example.com
management.metrics.export.graphite.port=9004
Микрометр предоставляет HierarchicalNameMapper по умолчанию, который определяет, как идентификатор dimensional meter отображается на плоские иерархические имена.
Чтобы взять под контроль это поведение, определите свой GraphiteMeterRegistry и укажите свой собственный HierarchicalNameMapper. Предоставляются автоматически настроенные компоненты GraphiteConfig и Clock, если вы не определите свой собственный:
@Bean
public GraphiteMeterRegistry graphiteMeterRegistry(GraphiteConfig config, Clock clock) {
return new GraphiteMeterRegistry(config, clock, MY_HIERARCHICAL_MAPPER);
}
Humio
По умолчанию реестр Humio периодически отправляет метрики в cloud.humio.com. Для экспорта метрик в SaaS Humio необходимо предоставить свой токен API:
management.metrics.export.humio.api-token=YOUR_TOKEN
Вам также следует настроить один или несколько тегов, чтобы идентифицировать источник данных, в который будут передаваться метрики:
management.metrics.export.humio.tags.alpha=a
management.metrics.export.humio.tags.bravo=b
Influx
По умолчанию метрики экспортируются в Influx, работающий на вашем локальном компьютере. Расположение сервера Influx для использования может быть предоставлено с помощью:
management.metrics.export.influx.uri=https://influx.example.com:8086
JMX
Micrometer обеспечивает иерархическое отображение JMX, прежде всего, как дешевый и портативный способ локального просмотра метрик. По умолчанию метрики экспортируются в домен метрик JMX. Используемый домен может быть предоставлен с использованием:
management.metrics.export.jmx.domain=com.example.app.metrics
Micrometer предоставляет HierarchicalNameMapper по умолчанию, который определяет, как идентификатор dimensional meter отображается на плоские иерархические имена.
Чтобы взять под контроль это поведение, определите свой JmxMeterRegistry и укажите свой собственный HierarchicalNameMapper. Предоставляются автоматически настроенные компоненты JmxConfig и Clock, если вы не определите свой собственный:
@Bean
public JmxMeterRegistry jmxMeterRegistry(JmxConfig config, Clock clock) {
return new JmxMeterRegistry(config, clock, MY_HIERARCHICAL_MAPPER);
}
KairosDB
По умолчанию метрики экспортируются в KairosDB, работающую на вашем локальном компьютере. Расположение сервера KairosDB для использования может быть предоставлено с помощью:
management.metrics.export.kairos.uri=https://kairosdb.example.com:8080/api/v1/datapoints
New Relic
Реестр New Relic периодически отправляет метрики в New Relic. Чтобы экспортировать показатели в New Relic, необходимо указать ключ API и идентификатор учетной записи:
management.metrics.export.newrelic.api-key=YOUR_KEY
management.metrics.export.newrelic.account-id=YOUR_ACCOUNT_ID
Вы также можете изменить интервал отправки метрик в New Relic:
management.metrics.export.newrelic.step=30s
Prometheus
Prometheus выполняет сбор или опрос отдельных экземпляров приложений о метриках. Spring Boot предоставляет конечную точку actuator, доступную в /actuator/prometheus, для предоставления сбору Prometheus метрик в соответствующем формате.
Конечная точка по умолчанию недоступна и должна быть открыта.
Вот пример scrape_config для добавления в prometheus.yml:
scrape_configs:
- job_name: 'spring'
metrics_path: '/actuator/prometheus'
static_configs:
- targets: ['HOST:PORT']
Для эфемерных или пакетных заданий, которые могут не существовать достаточно долго, чтобы можно было собрать с них метрики, поддержка Prometheus Pushgateway может использоваться для предоставления их метрик Prometheus. Чтобы включить поддержку Prometheus Pushgateway, добавьте в свой проект следующую зависимость:
<dependency>
<groupId>io.prometheus</groupId>
<artifactId>simpleclient_pushgateway</artifactId>
</dependency>
Когда на пути к классам присутствует зависимость Prometheus Pushgateway, Spring Boot автоматически настраивает компонент PrometheusPushGatewayManager. Это управляет продвижением метрик к Prometheus Pushgateway. PrometheusPushGatewayManager можно настроить с помощью свойств в разделе management.metrics.export.prometheus.pushgateway. Для расширенной настройки вы также можете предоставить свой собственный компонент PrometheusPushGatewayManager.
SignalFx
Реестр SignalFx периодически передает метрики в SignalFx. Чтобы экспортировать метрики в SignalFx, необходимо предоставить свой токен доступа:
management.metrics.export.signalfx.access-token=YOUR_ACCESS_TOKEN
Вы также можете изменить интервал отправки метрик в SignalFx:
management.metrics.export.signalfx.step=30s
Simple (простые метрики)
Micrometer поставляется с простым бекэндом в памяти, который автоматически используется в качестве запасного варианта, если не настроен другой реестр. Это позволяет увидеть, какие метрики собираются в конечной точке metrics.
Серверная часть в памяти отключается, как только вы используете любую другую доступную серверную часть. Вы также можете отключить ее явно:
management.metrics.export.simple.enabled=false
StatsD
Реестр StatsD передает метрики по UDP агенту StatsD. По умолчанию метрики экспортируются в агент StatsD, работающий на вашем локальном компьютере. Хост и порт агента StatsD для использования могут быть предоставлены с помощью:
management.metrics.export.statsd.host=statsd.example.com
management.metrics.export.statsd.port=9125
Вы также можете изменить используемый протокол линии StatsD (по умолчанию это Datadog):
management.metrics.export.statsd.flavor=etsy
Wavefront
Реестр Wavefront периодически передает метрики в Wavefront. Если вы экспортируете метрики в Wavefront напрямую, ваш API-токен должен быть предоставлен:
management.metrics.export.wavefront.api-token=YOUR_API_TOKEN
В качестве альтернативы вы можете использовать дополнительный интерфейс Wavefront или внутренний прокси-сервер, настроенный в вашей среде, который перенаправляет данные метрик на хост API Wavefront:
management.metrics.export.wavefront.uri=proxy://localhost:2878
При публикации метрик на прокси Wavefront (как описано в документации) хост должен быть в формате proxy://HOST:PORT.
Вы также можете изменить интервал отправки метрик в Wavefront:
management.metrics.export.wavefront.step=30s
Читайте также:
- Spring Boot Actuator: метрики
- Spring Boot Actuator: мониторинг и управление по HTTP
- Spring Boot Actuator: мониторинг и управление через JMX
Комментарии
Отправить комментарий