v1.6.0
Mejoras en Goxe v1.6.0
Sección titulada «Mejoras en Goxe v1.6.0»La versión 1.6.0 marca un hito en la flexibilidad del motor de procesamiento de Goxe. Hemos implementado un sistema de curación recursiva de JSON que permite desglosar y normalizar objetos anidados complejos, además de estandarizar el entorno de desarrollo mediante Nix Flakes.
Cambios Destacados
Sección titulada «Cambios Destacados»- Normalización Recursiva de JSON: Nuevo motor de agregación que procesa estructuras anidadas dinámicamente.
- Soporte para Nix Flakes: Inclusión de
flake.nixpara garantizar entornos de desarrollo y builds reproducibles. - Validación Estricta de I/O: El CLI ahora valida extensiones de archivo (
.log,.txt,.json) para prevenir errores de ingesta. - Optimización de Tipado: Refactorización del
jsonManagermediante aserciones de tipo para mejorar la velocidad en concurrencia.
Procesamiento de Logs con el CLI
Sección titulada «Procesamiento de Logs con el CLI»Goxe simplifica la reducción de logs mediante el flag -b (o --brew). A partir de esta versión, el motor detecta automáticamente la estructura del archivo para aplicar la recursividad si es necesaria.
Uso del comando
Sección titulada «Uso del comando»-
Preparar el origen: Asegúrese de que su archivo tenga una extensión válida (
.json,.logo.txt). -
Ejecutar la reducción:
Ventana de terminal goxe -b path/to/your/file.json -
Resultado: Goxe generará un resumen normalizado, procesando incluso los objetos JSON que se encuentren dentro de otros campos.
Normalización Recursiva de JSON
Sección titulada «Normalización Recursiva de JSON»Se introduce el JsonManager. Esta implementación de la interfaz File está diseñada específicamente para el procesamiento de logs estructurados, permitiendo una normalización que va más allá del texto plano.
Ejemplo de transformación estructural
Sección titulada «Ejemplo de transformación estructural»Entrada (JSON anidado):
{ "level": "error", "metadata": { "service": "auth-api", "details": { "code": 500, "reason": "timeout" } }}Firma generada por Goxe (Patrón de análisis):
ORIGIN: [file-reader]- Data: [level:error||metadata:details:code:<NUM>||reason:timeout||||service:auth-api|||] - Count: [1]Lógica de Normalización: Goxe identifica patrones volátiles y los reemplaza por placeholders para agrupar logs similares:
- Detección de Tipos: Los valores
float64,intyboolse normalizan a<NUM>y<BOOL>. - Identificadores Únicos: Mediante la función
isId, los hashes, UUIDs o tokens (strings > 20 caracteres sin espacios) se marcan como<ID>. - Determinismo: Las llaves de los mapas se ordenan alfabéticamente antes de generar el ID para asegurar que el patrón sea consistente.