Saltar al contenido principal

Referencia de Métricas

OmniRoam expone dos fuentes de métricas. La API de OmniRoam expone métricas de Prometheus para el estado del servicio. Las herramientas de ingestión y exportación escriben análisis de uso en InfluxDB.

Tabla de Contenidos

Métricas de Prometheus

La API de OmniRoam sirve métricas de Prometheus en GET /api/metrics. Un raspado lee un snapshot en caché, por lo que un raspado no ejecuta ninguna consulta a la base de datos. El recolector de métricas actualiza el snapshot en segundo plano, aproximadamente una vez por minuto.

Todas las métricas de OmniRoam son medidores.

MétricaEtiquetasDescripción
tap3_exporter_up-El recolector tiene un snapshot fresco. 1 significa sí.
tap3_service_upserviceEl servicio está en funcionamiento. 1 significa activo, 0 significa inactivo.
tap3_cgrates_up-La API del Motor de Carga está respondiendo.
tap3_cgrates_goroutines-El número de rutinas de trabajo del Motor de Carga.
tap3_cdr_total-El número total de CDRs en la base de datos.
tap3_files_pending-El número de archivos que esperan ser subidos.
tap3_files_sent-El número de archivos que fueron enviados.
tap3_files_total-El número total de archivos TAP.
tap3_files_generated_today-El número de archivos generados hoy.
tap3_last_file_generated_timestamp-El tiempo Unix de la última generación de archivo.
tap3_last_file_sent_timestamp-El tiempo Unix del último archivo enviado.
tap3_partner_files_pendingpartnerEl número de archivos pendientes por socio.
tap3_partner_files_sentpartnerEl número de archivos enviados por socio.
tap3_upload_status-El último estado de carga. 1 es éxito, 0 es fallo, -1 es desconocido.
tap3_hours_since_last_file-El número de horas desde el último archivo TAP.

La métrica tap3_cdr_total lee un conteo aproximado de filas. El recolector no ejecuta un conteo completo de la tabla, porque un conteo completo en la gran tabla de CDR agota el grupo de bases de datos de exportación.

Estado del Servicio

La métrica tap3_service_up informa una serie para cada dependencia. El recolector verifica cada servicio con el administrador de servicios del sistema.

Etiqueta del ServicioComponente
omniroam-apiLa API de OmniRoam.
cgratesEl Motor de Carga (etiqueta emitida literalmente).
mysqlLa base de datos de CDR (etiqueta emitida literalmente).
redis-serverLa cola de ingestión.
influxdbLa base de datos de análisis.

Consultas de Ejemplo

# Archivos TAP que esperan ser subidos
tap3_files_pending

# Horas desde el último archivo TAP, alerta cuando sea alto
tap3_hours_since_last_file > 26

# Socios con archivos pendientes
tap3_partner_files_pending > 0

# Una dependencia que está inactiva
tap3_service_up == 0

Mediciones de InfluxDB

Las herramientas de ingestión y exportación escriben cuatro mediciones en InfluxDB. Configure la conexión en la Referencia de Configuración.

MediciónCuándo se escribeEtiquetasCampos
raw_cdrUna vez por CDR, después de la calificación.operator, input_file, apn, cellId, imsi, tac, sGWAddress, pGWAddresschargeableUnits, chargedUnits
omnicore_cdr_partUna vez por CDR parcial durante la ingestión de OmniCore.accessPointNameNI, hpmln, sgw_ip, tacdataVolumeIncoming, dataVolumeOutgoing
file_processingUna vez por archivo de OmniCore procesado.individual_filenameno_imsi_count, sgw_cdr_count, pgw_cdr_count, charging_id_missing, roaming_sgw_cdr_count, empty_record, processing_time
tap_cdrUna vez por archivo TAP exportado.operator, filenametotalcharge, totalconsumed, cdr_count

La medición raw_cdr tiene alta cardinalidad, porque las etiquetas incluyen el IMSI, el identificador de celda y el nombre del archivo de entrada. Administre la política de retención de InfluxDB para controlar el crecimiento del almacenamiento. Consulte la Guía de Operaciones.