Skip to content

Servidor Prometheus integrado

control.observability.prometheus

El clúster central/Sapsan incluye un plano de datos de estadísticas integrado. Los streamers Sapsan envían sus estadísticas actuales a central; el titular del mandato stats construye el historial de métricas en memoria. Las consultas a este historial sirven los gráficos de la consola sin una TSDB en disco ni un servidor de métricas separado.

Un grupo con varias instancias de central tiene un único plano de estadísticas y un único almacén de historial. Las otras instancias reenvían las consultas al titular del mandato: todas consultan el mismo historial. Al reiniciar el titular o transferir el mandato se crea un almacén nuevo; las muestras anteriores no se transfieren.

Los valores predeterminados son un intervalo de muestreo de 30 segundos y una retención de seis horas. Cada serie tiene además un límite de 1024 muestras y el almacén admite hasta 1 200 000 series. Estos límites acotan el uso de memoria; no garantizan seis horas de historial en cualquier configuración. Para conservar el historial utilice un sistema de métricas externo.

Métricas de un servidor

Un streamer Sapsan independiente exporta los contadores actuales para que los recopile un Prometheus externo. Esto no proporciona la API de consultas históricas descrita aquí, que pertenece al plano de estadísticas del clúster en central.

Consultas al clúster

En Grafana, utilice una fuente de datos Prometheus con la URL base https://central.example/central/api-v4/prometheus y autenticación de la API de gestión de central. Añada las rutas estándar de la API Prometheus a esta base:

  • Consultas: /api/v1/query y /api/v1/query_range.
  • Catálogo: /api/v1/series, /api/v1/labels y /api/v1/label/{name}/values.
  • Información de compilación: /api/v1/status/buildinfo.

Esta URL usa el backend seleccionado por central.stats: historial integrado, Prometheus externo o Retroview. Los límites de memoria y retención anteriores solo se aplican al historial integrado.

Las series de streams usan name para el stream y server_id para el streamer. El motor integrado admite un subconjunto de PromQL; las construcciones no compatibles devuelven un error explícito.

rate(in_media_bytes_total{name="cam1"}[1m])
sum by (server_id) (rate(in_media_bytes_total[1m]))