Zylon admite almacenamiento interno de logs y entrega externa por syslog y HTTP.
La entrega por syslog esta pensada para SIEMs y colectores que aceptan eventos syslog o CEF.
La entrega por HTTP esta pensada para endpoints de ingesta estructurada, destinos cloud y pipelines gestionados por el cliente.
La entrega es asincrona.
Con failurePolicy: "drop", la entrega evita bloquear el camino critico cuando las colas estan llenas.
Los eventos entregados se pueden filtrar por patrones de accion e IDs de organizacion.
Los logs almacenados permanecen en el despliegue Zylon del cliente salvo que se habilite entrega externa de logs por syslog o HTTP.
Configure estos ajustes en el YAML de valores de Helm de Zylon. El chart mapea estos valores a la configuracion interna del backend; la configuracion de cliente debe usar las claves YAML mostradas aqui.Para gobernanza, auditabilidad, soporte de trazabilidad para EU AI Act, preservacion de evidencia y retencion, consulte Auditabilidad y gobernanza de IA: Logging, evidencia y entrega a SIEM.
La limpieza de logs internos se controla bajo zylonBackend.scheduler.cleanup.Configuracion del programador:
Clave
Predeterminado
Valores
Descripcion
enabled
false
true, false
Habilita el programador de limpieza.
cron
0 3 * * *
expresion cron
Programacion de limpieza. Compartida con el borrado permanente.
timezone
UTC
zona horaria
Zona horaria usada por la programacion. Compartida con el borrado permanente. Si el ajuste runtime se omite fuera de Helm, el backend usa la zona horaria JVM del servidor.
Bajo logging:
Clave
Predeterminado
Valores
Descripcion
enabled
false
true, false
Habilita la limpieza de logs almacenados.
deleteAfterDays
180
dias enteros
Elimina logs almacenados con mas antiguedad que este umbral.
La limpieza de logs almacenados esta deshabilitada por defecto. El valor 180 dias aplica solo despues de habilitar tanto el programador de limpieza como la limpieza de logs almacenados.
La limpieza de logs usa el mismo cron y la misma zona horaria que el borrado permanente. Revise Borrado permanente antes de cambiar la programacion compartida.
La entrega por syslog envia registros formateados a un colector por TCP, TLS o UDP.Use rfc5424_json para pipelines syslog estructurados. Use cef cuando el colector tenga un input CEF nativo.
Formato
Descripcion
Uso
rfc5424_json
Syslog RFC 5424 con un sobre JSON en el cuerpo. El esquema es zylon.rfc5424_json.v1.
Eventos estructurados para SIEM o busqueda.
cef
Formato CEF bruto. La extension CEF incluye el registro estructurado bajo cs1.
Colectores con input CEF nativo.
Transporte
Comportamiento
tls
Socket TLS persistente. Admite verificacion de certificado y CA personalizada.
tcp
Socket TCP persistente sin TLS.
udp
Entrega por datagrama. Un evento por datagrama; el framing se ignora.
Host del colector. Requerido cuando syslog esta habilitado.
port
6514
puerto TCP/UDP valido
Puerto del colector.
transport
tls
tls, tcp, udp
Transporte del socket.
framing
newline
newline, octet_counting
Framing para TCP/TLS. Ignorado para UDP.
Claves opcionales de syslog
Los filtros y ajustes opcionales de entrega, cola, lotes y TLS se configuran bajo sus bloques anidados correspondientes en logging.delivery.syslog.Bajo filters:
Clave
Predeterminado
Valores
Descripcion
includeActionPatterns
[]
lista wildcard
Si no esta vacia, solo se entregan acciones coincidentes.
excludeActionPatterns
[]
lista wildcard
Las acciones coincidentes se excluyen antes de evaluar inclusiones.
includeOrgIds
[]
lista de UUIDs
Si no esta vacia, solo se entregan logs de esas organizaciones.
Bajo delivery:
Clave
Predeterminado
Valores
Descripcion
timeoutSeconds
10
entero positivo
Timeout de conexion y escritura.
failurePolicy
drop
drop, block
Comportamiento cuando la cola asincrona esta llena.
Bajo delivery.reconnect:
Clave
Predeterminado
Valores
Descripcion
enabled
true
true, false
Habilita reconexion tras fallo.
backoffSeconds
5
entero no negativo
Espera antes de reconectar.
Bajo delivery.queue:
Clave
Predeterminado
Valores
Descripcion
maxEvents
10000
entero positivo
Capacidad de la cola asincrona.
Bajo delivery.batch:
Clave
Predeterminado
Valores
Descripcion
maxEvents
25
entero positivo
Eventos maximos por lote. Forzado a 1 en UDP.
maxDelayMillis
250
entero positivo
Espera maxima antes de enviar un lote parcial.
drainTimeoutMillis
1000
entero positivo
Tiempo de drenaje durante apagado.
Bajo tls:
Clave
Predeterminado
Valores
Descripcion
verifyCertificate
false
true, false
Habilita verificacion de certificado y hostname TLS.
caCrt
vacio
datos PEM
Certificado CA inline. Si se define y caFile esta vacio, el chart lo monta para el backend.
caFile
vacio
ruta legible
Bundle CA personalizado usado cuando la verificacion esta habilitada.
La entrega por HTTP envia registros JSON estructurados a un colector HTTP. El formato admitido es canonical_json; el esquema es zylon.canonical_json.v1.HTTP admite POST, autenticacion bearer opcional, cabeceras estaticas con Header=Value o Header: Value, reintentos para errores de red y respuestas 5xx, y no reintenta respuestas 4xx.
La autenticacion y los ajustes opcionales de filtros, entrega, cola y lotes se configuran bajo sus bloques anidados correspondientes en logging.delivery.http.Bajo auth:
Clave
Predeterminado
Valores
Descripcion
type
none
none, bearer
Modo de autenticacion.
token
vacio
string
Requerido cuando type es bearer.
Bajo filters:
Clave
Predeterminado
Valores
Descripcion
includeActionPatterns
[]
lista wildcard
Si no esta vacia, solo se entregan acciones coincidentes.
excludeActionPatterns
[]
lista wildcard
Las acciones coincidentes se excluyen antes de evaluar inclusiones.
includeOrgIds
[]
lista de UUIDs
Si no esta vacia, solo se entregan logs de esas organizaciones.
Bajo delivery:
Clave
Predeterminado
Valores
Descripcion
timeoutSeconds
10
entero positivo
Timeout HTTP de conexion, lectura y escritura.
failurePolicy
drop
drop, block
Comportamiento cuando la cola asincrona esta llena.
Bajo delivery.retry:
Clave
Predeterminado
Valores
Descripcion
enabled
true
true, false
Habilita reintentos HTTP.
maxAttempts
3
entero positivo
Intentos maximos cuando los reintentos estan habilitados.
backoffSeconds
3
entero no negativo
Espera entre reintentos.
Bajo delivery.queue:
Clave
Predeterminado
Valores
Descripcion
maxEvents
10000
entero positivo
Capacidad de la cola asincrona.
Bajo delivery.batch:
Clave
Predeterminado
Valores
Descripcion
maxEvents
25
entero positivo
Eventos maximos por peticion HTTP. Los lotes se envian como array JSON.
Mantenga todos los nodos backend de Zylon sincronizados con una fuente horaria confiable como NTP. El chart Helm configura UTC por defecto para el programador de limpieza; si el ajuste runtime se omite fuera de Helm, el backend usa la zona horaria JVM del servidor. Los registros deben revisarse en UTC para correlacion forense entre sistemas.Trate cambios en logging.storage, logging.delivery, filtros, retencion y destinos de colector como cambios de despliegue auditables. Capture aprobaciones y diffs en GitOps, change management, auditoria Kubernetes o el sistema de auditoria de infraestructura usado por el cliente.Los esquemas entregados usan marcadores como zylon.rfc5424_json.v1 y zylon.canonical_json.v1. Los parsers SIEM deben enrutar por marcador y validar compatibilidad al actualizar.
Descarta eventos cuando la cola esta llena y evita bloquear requests.
Predeterminado recomendado para produccion.
block
Aplica backpressure cuando la cola esta llena.
Use solo si la completitud de entrega es mas importante que la latencia.
failurePolicy: "block" puede ralentizar requests cuando la cola de entrega esta llena. Uselo solo despues de dimensionar colas y confirmar disponibilidad del colector.
El spooling de entrega externa respaldado por disco no esta implementado.