Construyendo un Sistema Robusto de Monitoreo de Series Temporales: Integrando RTI Connext DDS con Telegraf e InfluxDB
¿Por Qué Combinar DDS, Telegraf e InfluxDB?
En IoT industrial, la visibilidad en tiempo real de la telemetría de dispositivos es crítica. RTI Connext DDS entrega distribución de datos escalable y de baja latencia, mientras InfluxDB sobresale en almacenar y consultar métricas de series temporales. Telegraf, el recolector de métricas ligero de InfluxData, une ambos al ingerir datos DDS y reenviarlos a InfluxDB (u otros destinos). Esta arquitectura ofrece un pipeline de monitoreo flexible y de alto rendimiento adaptable a cualquier despliegue IIoT.
Presentando el Plugin de Entrada Telegraf Connext DDS
Hasta hace poco, Telegraf carecía de un plugin nativo de entrada DDS, limitando su capacidad para consumir datos de Connext DDS directamente. El plugin dds_consumer cubre esa brecha. Corre como un servicio en segundo plano, escuchando mensajes DDS vía WaitSets, y empuja métricas parseadas al buffer interno de Telegraf para procesamiento posterior.
Características Clave
- Operación estilo servicio: reenvía automáticamente muestras DDS entrantes sin sondeo.
- Soporta formato de datos JSON, la serialización más común para demos DDS.
- Etiquetas configurables, nombres de medición y mapeos de campos.
- Compatible con procesadores y agregadores integrados de Telegraf para manejo avanzado de métricas.
Visión General del Desarrollo del Plugin
El marco de plugins de Telegraf define un conjunto de interfaces. Un plugin de entrada implementa métodos Sample y SampleSet, mientras que un plugin de servicio agrega funciones Start y Stop para gestionar hilos en segundo plano. El plugin dds_consumer aprovecha estos para generar un listener que reacciona a llegadas DDS.
Primeros Pasos: Conceptos Básicos de Configuración
Los archivos de configuración de Telegraf se escriben en TOML. El plugin requiere un archivo XML adicional que describe entidades DDS (Participante, Publicador, Suscriptor, Lector, etc.). A continuación se muestra un ejemplo mínimo que lee un tópico DDS Square publicado por la demo RTI Shapes y escribe métricas en un archivo local.
[[inputs.dds_consumer]] ## Ruta a la descripción XML de DDS config_path = "example_configs/ShapeExample.xml" ## Nombre de configuración de Participante DDS participant_config = "MyParticipantLibrary::Zero" ## Nombre de configuración de DataReader DDS reader_config = "MySubscriber::MySquareReader" ## Claves de etiqueta extraídas del payload DDS tag_keys = ["color"] ## Sobrescribe nombre de medición por defecto name_override = "shapes" ## Formato de datos esperado data_format = "json"
Para generar una configuración completa de Telegraf que incluya esta entrada y una salida de archivo, ejecute:
$ telegraf --input-filter dds_consumer --output-filter file config > dds_to_file.conf $ telegraf -config dds_to_file.conf
Después de publicar una muestra Square en la demo Shapes, las métricas aparecerán en /tmp/metrics.out.
Cambio a Salida InfluxDB
Reemplace la salida de archivo con InfluxDB regenerando la configuración:
$ telegraf --input-filter dds_consumer --output-filter influxdb config > dds_to_influx.conf $ telegraf -config dds_to_influx.conf
Mejorando su Pipeline de Métricas
El ecosistema de Telegraf incluye varios plugins integrados que agregan valor:
Agregadores
Calculan estadísticas como media, min, max y desviación estándar a lo largo del tiempo:
[[aggregators.basicstats]] period = "10s" drop_original = false
Procesadores
Renombran o transforman campos antes del almacenamiento:
[[processors.rename]] [[processors.rename.replace]] field = "x" dest = "y_trans" [[processors.rename.replace]] field = "y" dest = "x_trans"
Estas herramientas le permiten adaptar el modelo de datos a sus necesidades de monitoreo, ya sea que necesite muestras crudas, resúmenes agregados o nombres de campos personalizados.
Recursos y Soporte Comunitario
El plugin es parte de RTI Labs, un programa gratuito que da acceso temprano a tecnología RTI. Encuentre el código fuente, documentación y configuraciones de ejemplo en GitHub:
Para preguntas, comentarios o solicitudes de características, visite el foro de la Comunidad RTI o abra un issue en GitHub.
Conclusión
El plugin Telegraf Connext DDS desbloquea un pipeline potente y de bajo overhead para ingerir telemetría DDS en InfluxDB. Al combinar la arquitectura extensible de Telegraf con el middleware DDS de RTI, puede construir una solución de monitoreo de series temporales escalable y confiable para cualquier escenario IIoT.
Tecnología de Internet de las cosas
- ¿Es el Monitoreo Continuo la Elección Correcta para sus Operaciones?
- Control de temperatura casero para cerveza: monitorizar y regular con Arduino
- Maximice el ahorro energético con controladores centrales y monitorización remota
- Connext DDS en IIoT: 5 Claves para Fiabilidad, Seguridad y Escalabilidad
- RTI Perftest 2.4 lanzado: Pruebas de rendimiento mejoradas para Connext DDS
- Cisco lanza monitorización IoT gestionada en cloud para entornos IT y OT
- Monitorización ambiental IoT: Transformando la atención al paciente
- Industria 4.0: Transformando el Monitoreo de Condición de Activos para una Eficiencia Inigualable
- Soluciones de Monitoreo de Gas Habilitadas por IoT: Elevando los Estándares de Seguridad Industrial
- Revolucione la Gestión Láctea con Monitoreo de Nivel de Leche Habilitado por IoT
- Solución Robusta de Monitoreo de Nivel para Líquidos Corrosivos y Explosivos