Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Parsers y campos faltantes

5 tareas · 40 min · Principiante

Un parser es la pieza que convierte una línea de texto en campos. Cuando funciona nadie lo nota; cuando falla, el SIEM sigue recibiendo líneas, los paneles siguen verdes y las reglas dejan de disparar sin avisar. En Ribera Norte Logística la pasarela de API cambió de versión de agente hace unos días. Lees líneas crudas, lo que el parser sacó de ellas y la cobertura de cada campo, y aprendes a distinguir un dato ausente de un dato que no se supo leer.

0 de 5 · 0%

Objetivo de la sala

Un parser es la pieza que convierte una línea de texto en campos. Cuando funciona nadie lo nota; cuando falla, el SIEM sigue recibiendo líneas, los paneles siguen verdes y las reglas dejan de disparar sin avisar. En Ribera Norte Logística la pasarela de API cambió de versión de agente hace unos días. Lees líneas crudas, lo que el parser sacó de ellas y la cobertura de cada campo, y aprendes a distinguir un dato ausente de un dato que no se supo leer.

Un parser recibe el texto original de un evento y extrae de él campos con nombre: origen, destino, puerto, usuario. Lo hace con patrones fijos, así que depende de que el formato de la línea no cambie. Si un proveedor cambia el nombre de un par (src= pasa a source=) el patrón deja de coincidir.

Cuando el patrón no coincide hay dos desenlaces: la línea se rechaza con un error visible, o se guarda con los campos vacíos. El segundo es el peligroso, porque el evento existe pero no se puede buscar por ninguno de sus datos.

Responde para continuar

Un parser recibe líneas con un formato que no esperaba y las guarda con todos los campos vacíos. ¿Por qué es un problema serio?

Ver pista de ayuda

Una regla busca valores en campos; sin campos, no hay nada que comparar.

Abre las muestras crudas y el resultado del parser. Compara cómo se llaman los pares en las líneas de cada versión del agente y luego mira qué líneas salieron sin ningún campo.

Responde para continuar

¿Qué versión de agente produce las líneas que el parser no logró leer?

Ver pista de ayuda

Ejecuta `SELECT * FROM muestras_crudas` y `SELECT * FROM resultado_del_parser`, y cruza por linea_id.

Un campo vacío puede significar cosas distintas. Si la línea trae un guion donde iría el usuario, el dato no existía y el parser hizo bien su trabajo. Si la línea trae el usuario, pero el campo salió vacío, el parser falló. Mezclar las dos cosas lleva a arreglar lo que no estaba roto o a ignorar lo que sí.

Responde para continuar

¿Qué línea no trae usuario, pero se leyó bien porque el parser sí extrajo su origen, destino y puerto?

Ver pista de ayuda

Mira en muestras_crudas qué línea de la versión que funciona termina con un guion en el usuario.

Nadie revisa a mano miles de líneas por hora. La forma de vigilar un parser es la cobertura de campos: de las líneas recibidas, en cuántas se extrajo cada campo. Una caída brusca es la señal de que algo cambió en el origen.

Responde para continuar

¿Qué porcentaje de las líneas de la última hora tiene valor en el campo usuario? Escribe solo el número.

Ver pista de ayuda

Ejecuta `SELECT * FROM cobertura_de_campos` y divide lineas_con_valor entre lineas_total.

La cobertura de los tres primeros campos es la misma y menor que la total; la del usuario es más baja todavía, porque suma los fallos del parser y las líneas que de verdad no traían usuario. El arreglo está en el parser, no en el origen: el proveedor tiene derecho a cambiar el formato de su agente.

Responde para continuar

Tras un cambio de formato del agente, ¿qué corrección es la adecuada?

Ver pista de ayuda

Se arregla lo que está bajo control del equipo y se comprueba con una medida.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad