Analizador de Logs JSON para Flujo Documental
Convierte logs operacionales en métricas claras para detectar esperas, bloqueos y tiempos de procesamiento. Importación local de archivos JSON, reconstrucción de ciclos y reportes visuales — todo cerrado en el navegador.
De Logs Opacos a Diagnóstico Accionable
Una plataforma documental genera cientos de eventos por documento durante el flujo de extracción. Cada evento queda registrado en un log JSON con su marca temporal.
El problema es que esos logs son opacos: cientos de líneas donde es imposible ver cuánto tiempo pasa cada documento esperando, qué actividad está reteniendo el flujo, o cuánto tarda un documento en llegar a validación.
Antes
- Logs JSON sin visualización ni métricas
- Cuellos de botella imposibles de detectar
- Tiempo de espera y bloqueo invisible
- Lead Time desconocido
- Análisis limitado a un archivo a la vez
Diagnóstico de Trazas con Precisión Estadística
Importación JSON
Carga de archivos de log con normalización de eventos y reconstrucción automática de ciclos.
Detección de Cuellos
Identifica actividades donde espera más bloqueo supera el procesamiento activo, con severidad.
Análisis Multi-Archivo
Compara N archivos simultáneamente. Mediana, P90, P95 y detección de outliers.
Reportes Accionables
Resumen ejecutivo, recomendaciones priorizadas y reportes exportables por archivo.
El Analizador en Acción
Dashboard con KPIs en Tiempo Real
Panel principal con indicadores clave: eventos totales, duración total, duración promedio y actividad más lenta. Gráficos de línea, barras y dona.
Detección de Cuellos de Botella
Clasifica automáticamente actividades que exceden 1.5x la duración promedio como cuellos de botella, asignando severidad alta cuando superan el doble.
Cómo se Construyó
Arquitectura MVC en Vanilla JS
La aplicación separa responsabilidades en tres capas con clases ES6 puras, sin framework ni biblioteca de routing. Cada capa se carga como un <script> independiente y puede razonarse por separado.
JsonParser · AuditAnalyzer · TimeCalculator · ReportGenerator · MultiReportAnalyzer
KPICard · ActivityTable · ChartComponent
AuditController · DashboardController · ReportController · MultiReportController
Patrón central: AuditAnalyzer.buildCyclesByActivity() — una máquina de estados que reconstruye ciclos Waiting → Locked → Processing → Released a partir de eventos desordenados por timestamp. El patrón permite agrupar, medir y detectar cuellos de botella incluso cuando los eventos llegan fuera de secuencia.
Flujo de Datos
Desde que el usuario arrastra un archivo hasta que aparece el dashboard, los datos atraviesan seis etapas secuenciales sin salir del navegador.
FileReader lee el contenido localmente.
JsonParser normaliza eventos con flexibilidad camelCase y PascalCase.
AuditAnalyzer agrupa eventos por actividad, detecta ciclos y calcula métricas.
TimeCalculator computa duraciones, cuellos de botella y percentiles P90/P95.
ReportGenerator produce resumen ejecutivo con recomendaciones priorizadas.
Decisiones Técnicas
Sin Build Tools
Vanilla JS con <script> tags. Zero npm, zero bundler, zero config. Cualquier navegador abre el archivo y funciona. Deploy = copiar al servidor.
MVC Sin Framework
Clases ES6 puras con separación estricta por responsabilidad. Cada capa es testeable de forma independiente sin mockear el DOM.
Cycle Detection
Máquina de estados que reconstruye ciclos Waiting → Locked → Processing → Released desde eventos desordenados. Detecta ciclos incompletos y calcula duración real por fase.
Multi-JSON Aggregation
Compara N archivos de auditoría con percentiles P90/P95, mediana y detección de outliers. Identifica patrones de degradación entre ejecuciones.
Recorrido Visual del Analizador
01 — Carga de archivos JSON con zona drag-and-drop
03 — Tabla de actividades con duraciones y estados
05 — Reporte ejecutivo con métricas y recomendaciones
06 — Pipeline de procesamiento de extremo a extremo
Herramientas del Proyecto
Frontend
Arquitectura
Análisis
Sin Dependencias
¿Necesitas convertir logs en decisiones operativas?
Este analizador transforma trazas JSON en diagnóstico accionable. Hablemos de cómo aplicar métricas a tu flujo de extracción documental.