Streaming de registros de telemetría en tiempo real

Transmita los registros de acceso del proxy desde su servidor XProxy a Graylog o SigNoz en tiempo real: supervise varios dispositivos desde un único lugar, cree paneles y reciba alertas de errores.

¿Por qué utilizar la transmisión de registros centralizada?

  • Supervisión unificada — vigile el acceso y el estado de todos los nodos XProxy en tiempo real.
  • Consultas sencillas — filtre por dispositivo, región, acción o código de error.
  • Resolución de problemas más rápida — aísle rápidamente errores, picos de tráfico o comportamientos anómalos.
Configuración en: XProxy → Ajustes generales → Registros de telemetría. Proveedores compatibles: Graylog (GELF UDP) y SigNoz (OTLP/HTTP).

Etiquetado recomendado

  • Identificador de host — nombre por servidor; p. ej., sg-core-01, us-east-02.
  • Nombre del servicio — agrupe por región o unidad de negocio; p. ej., xproxy-region-a.

Cada registro incluye estas etiquetas, lo que facilita la creación de paneles y filtros entre dispositivos.

Casos de uso comunes

  • Recuento de IP de clientes únicas — estime el tráfico real y detecte fuentes desconocidas.
  • Seguimiento de la tasa de errores — filtre error_code != 00000 para medir la fiabilidad.
  • Principales destinos y ancho de banda — agrupe por destination_host y sume received_bytes y sent_bytes.
  • Supervisión por dispositivo/puerto — use modem_position, proxy_port y proxy_service para aislar un dongle específico.
  • Detección de anomalías — alerte sobre picos repentinos de tráfico o códigos de error elevados.

Consejos operativos para muchos dispositivos

  • Nomenclatura coherente — estandarice el Identificador de host y el Nombre de servicio por región o grupo.
  • Separación de entornos — use prefijos como prod- / stg- en el Nombre de servicio.
  • Planificación de retención — configure la rotación de índices en Graylog; supervise el uso/la retención en SigNoz Cloud.
  • Alertas de estado — alerte cuando un nodo deje de enviar registros durante N minutos; vuelva a ejecutar Probar conexión tras añadir nuevos nodos.

Opción A — Graylog

Instalar Graylog

Requisitos: Ubuntu Server 20.04 o 22.04, mínimo 2 GB de RAM (4 GB recomendados).

bash
curl x-proxy.io/graylog | bash
Instalación de Graylog

Crear una entrada GELF UDP

  1. Abra Graylog → Sistema → Entradas.
  2. Elija GELF UDP y haga clic en Iniciar nueva entrada.
  3. Establezca la dirección de enlace en 0.0.0.0 y el puerto en 12201.
  4. Haga clic en Guardar.
Entrada GELF UDP de Graylog

Configurar XProxy para Graylog

  1. Abra Ajustes generales → Registros de telemetría.
  2. Active Activar telemetría.
  3. Establezca el proveedor en Graylog.
  4. Introduzca el servidor Graylog como YOUR_GRAYLOG_IP:12201.
  5. Establezca Identificador de host y Nombre del servicio (opcional, pero recomendado).
  6. Haga clic en Guardar y, a continuación, en Probar conexión.
Formulario de configuración de XProxy para Graylog

Ejemplos de consulta en Graylog

graylog query
# By service/cluster
service_name:xproxy-region-a

# Only errors
error_code:!00000

# By action
action:CONNECT

# By device/slot
modem_position:3
Resultados de búsqueda de Graylog

Opción B — SigNoz

Instalar SigNoz (Comunidad)

Requisitos: Ubuntu Server 20.04, 22.04 o 24.04. Omítalo si utiliza SigNoz Cloud.

bash
curl x-proxy.io/signoz | bash
Instalación de SigNoz

Configurar XProxy para SigNoz

  1. Abra Ajustes generales → Registros de telemetría.
  2. Active Activar telemetría y seleccione SigNoz como proveedor.
  3. Introduzca el endpoint OTLP/HTTP; p. ej., https://ingest.us.signoz.cloud:4318.
  4. Pegue su clave de ingestión (SigNoz Cloud) o déjelo en blanco para instalaciones locales.
  5. Establezca el Nombre del servicio (p. ej., xproxy-region-a).
  6. Haga clic en Guardar y, a continuación, en Probar conexión.
Formulario de configuración de XProxy para SigNoz

Ejemplos de consulta en SigNoz

signoz query
# By service name
service.name = "xproxy-region-a"

# Only errors
attributes.error_code != "00000"

# By action
attributes.action = "CONNECT"

# By device/slot
attributes.modem_position = 3
Explorador de registros de SigNoz

Referencia de campos de registro

CampoDescripción
log_dateFecha del registro (DD/MM)
log_timeHora del registro (HH:MM:SS)
proxy_serviceNombre del grupo de servicio (p. ej., MAIN)
modem_positionÍndice de dispositivo/ranura que atiende la solicitud
proxy_protocolHTTP o SOCKS5
proxy_portPuerto de escucha del proxy en XProxy
proxy_userNombre de usuario utilizado para autenticarse (vacío si se usa lista blanca de IP)
client_ipIP del cliente que usa el proxy
destination_hostHost de destino solicitado a través del proxy
destination_portPuerto de destino
actionCONNECT (túnel) o ACCESS (solicitud HTTP)
error_code00000 = correcto; distinto de cero = error
received_bytesBytes del destino al cliente
sent_bytesBytes del cliente al destino

Referencia de códigos de error

XProxy emite un error_code de cinco dígitos en los registros (p. ej., 00000, 00004). Los ceros iniciales son intencionados para una ordenación y un filtrado coherentes.

  • 00000 — Correcto (conexión cerrada con normalidad)
  • 00001–00009 — Errores de autenticación (ACL/nombre de usuario/contraseña)
  • 00010 — Límite de tráfico superado
  • 00011–00019 — Errores de conexión (socket/bind/connect)
  • 00020–00029 — Errores internos (p. ej., asignación de memoria)
  • 00030–00039 — Errores de redirección del proxy HTTP CONNECT
  • 00050–00069 — Errores de redirección del proxy SOCKS5
  • 00090–00099 — Tiempos de espera de conexión / problemas de red
  • 00100 — Host no encontrado
  • 00200–00299 — Errores del portmapper UDP
  • 00300–00399 — Errores del portmapper TCP
  • 00400–00499 — Errores del proxy SOCKS
  • 00500–00599 — Errores del proxy HTTP

Resolución de problemas

  • Sin datos — asegúrese de que la telemetría esté activada y de haber hecho clic en Guardar. Genere tráfico a través de cualquier puerto del proxy.
  • Graylog — confirme que la entrada GELF UDP se esté ejecutando en el puerto 12201 y que el cortafuegos permita UDP 12201.
  • SigNoz — el endpoint debe incluir el puerto 4318 y ser accesible mediante HTTPS. Verifique la clave de ingestión y la región del espacio de trabajo.

Verifique que todo funciona

  • Graylog — busque service_name:xproxy-logs y compruebe los campos del mensaje en el panel derecho.
  • SigNoz — en el Explorador de registros, filtre por el nombre de servicio exacto que configuró, p. ej., service.name = "xproxy-region-a". O borre los filtros para ver todos los registros y confirmar la ingestión; abra cualquier fila para ver los atributos.

Preguntas frecuentes

¿Cómo verifico que los registros se están transmitiendo?

Utilice la sección Verifique que todo funciona anterior: en Graylog busque service_name:xproxy-logs; en SigNoz abra el Explorador de registros y filtre por service.name.

¿Cómo distinguir dispositivos o regiones?

Configure el Identificador de host por servidor y el Nombre de servicio por región o clúster. Estas etiquetas aparecen en cada registro.

¿Por qué proxy_user está vacío?

Probablemente esté usando la lista blanca de IP; el nombre de usuario de autenticación no está presente.

¿Cuál es la diferencia entre CONNECT y ACCESS?

CONNECT es el establecimiento de un túnel; ACCESS es una solicitud HTTP enviada a través del proxy a un destino.

¿Cómo puedo recibir alertas de errores?

Cree una regla sobre error_code != "00000" en una ventana de tiempo; agrupe por service_name o modem_position para localizar el origen.