En resumenRecopila y visualiza los logs del broker de Kafka (formato Log4j) en ClickStack mediante el receptor
filelog de OTel. Incluye un conjunto de datos de demostración y un dashboard preconfigurado.Integración con Kafka existente
Requisitos previos
- Instancia de ClickStack en funcionamiento
- Instalación existente de Kafka (versión 2.0 o posterior)
- Acceso a los archivos de registro de Kafka (
server.log,controller.log, etc.)
Verifique la configuración de logging de Kafka
Kafka usa Log4j y escribe los logs en el directorio especificado por la propiedad del sistemakafka.logs.dir o la variable de entorno LOG_DIR. Compruebe la ubicación de su archivo de log:server.log: Registros generales del broker (inicio, conexiones, replicación, errores)controller.log: Eventos específicos del controlador (elección del líder, reasignación de particiones)state-change.log: Transiciones de estado de particiones y réplicas
Para despliegues de Kafka basados en Docker (por ejemplo,
confluentinc/cp-kafka), la configuración predeterminada de Log4j solo incluye un appender de consola; no hay ningún appender de archivo, por lo que los logs se escriben únicamente en stdout. Para usar el receiver filelog, tendrás que redirigir los logs a un archivo, ya sea añadiendo un appender de archivo a log4j.properties o redirigiendo stdout mediante una tubería (por ejemplo, | tee /var/log/kafka/server.log).Cree una configuración personalizada del OTel collector para Kafka
ClickStack le permite ampliar la configuración base de OpenTelemetry Collector montando un archivo de configuración personalizado y definiendo una variable de entorno. La configuración personalizada se combina con la configuración base administrada por HyperDX mediante OpAMP.Cree un archivo llamadokafka-logs-monitoring.yaml con la siguiente configuración:- En la configuración personalizada, solo defines nuevos receivers y pipelines. Los processors (
memory_limiter,transform,batch) y exporters (clickhouse) ya están definidos en la configuración base de ClickStack; solo los referencias por nombre. - La configuración
multilinegarantiza que las trazas de pila se capturen como una sola entrada de registro. - Esta configuración usa
start_at: beginningpara leer todos los logs existentes cuando se inicia el collector. En implementaciones de producción, cámbialo astart_at: endpara evitar volver a ingestar los logs cuando el collector se reinicie.
Configura ClickStack para cargar una configuración personalizada
Para habilitar una configuración personalizada del collector en tu despliegue actual de ClickStack, debes hacer lo siguiente:- Montar el archivo de configuración personalizado en
/etc/otelcol-contrib/custom.config.yaml - Establecer la variable de entorno
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yaml - Montar el directorio de logs de Kafka para que el collector pueda leerlos
- Docker Compose
- Docker Run (imagen todo en uno)
Actualiza la configuración de despliegue de ClickStack:
Asegúrate de que el collector de ClickStack tenga los permisos adecuados para leer los archivos de log de Kafka. En producción, usa montajes de solo lectura (
:ro) y sigue el principio de privilegio mínimo.Verificar los logs en HyperDX
Una vez completada la configuración, inicia sesión en HyperDX y verifica que los logs se estén recibiendo:Conjunto de datos de demostración
Crea la configuración del collector de prueba
Crea un archivo llamadokafka-logs-demo.yaml con la siguiente configuración:Ejecuta ClickStack con la configuración de demostración
Ejecuta ClickStack con los logs de demostración y esta configuración:Verifica los logs en HyperDX
Una vez que ClickStack esté en ejecución:- Abre HyperDX e inicia sesión en tu cuenta (puede que primero tengas que crear una cuenta)
- Ve a la vista Search y establece la fuente en
Logs - Ajusta el intervalo de tiempo para que incluya 2026-03-09 00:00:00 - 2026-03-10 00:00:00 (UTC)
Dashboards y visualización
la configuración del dashboard
Importar dashboard preconfigurado
- Abre HyperDX y ve a la sección Dashboards.
- Haz clic en “Import Dashboard” en la esquina superior derecha, en el menú de tres puntos.
- Sube el archivo kafka-logs-dashboard.json y haz clic en Finalizar importación.
El dashboard se creará con todas las visualizaciones preconfiguradas
Para el dataset de demostración, establece el intervalo de tiempo para incluir 2026-03-09 00:00:00 - 2026-03-10 00:00:00 (UTC).Solución de problemas
regex_parser según corresponda.
Siguientes pasos
- Configura alertas para eventos críticos (fallos del broker, errores de replicación, problemas con el grupo de consumidores)
- Combínalo con Métricas de Kafka para una monitorización integral de Kafka
- Crea dashboards adicionales para casos de uso específicos (eventos del controlador, reasignación de particiones)