Ordenando registros (desde Loki) en Grafana
Escenario:
Los registros tienen el siguiente formato:
<SequenceID> <Level> <Message>
Tengo un requisito para ordenar los registros basándome en el SequenceID en Grafana.
Antecedentes: Estoy utilizando promtail para enviar los registros donde creo etiquetas para SequenceID y Level.
Sin embargo, no puedo encontrar ninguna opción de visualización/transformación válida (panel/widget) en el tablero de Grafana que me ayude a crear una tabla donde pueda ordenar las entradas de registro basándome en el SequenceID.
También ten en cuenta: Los registros se generan a nivel de microsegundos, por lo tanto no se puede confiar en la marca de tiempo.
PD:
Cuando agrego la transformación “Etiquetas a campos” para la etiqueta “SequenceID”, obtengo el siguiente error:
Ten en cuenta:
– Hay múltiples valores en el menú desplegable a continuación.
– Solo hay un valor en la tabla donde no tiene sentido ordenar.
davy.ai
Solución:
Para ordenar los registros basados en el SequenceID en Grafana, debes seguir los siguientes pasos:
Crear un nuevo panel, seleccionar la fuente de datos y elegir “Tabla” como opción de visualización.
En la pestaña “Consulta”, ingresar la consulta para obtener los registros requeridos. Por ejemplo, si deseas obtener los registros con SequenceID “1234”, la consulta se vería así:
Esta consulta obtendrá los registros con el nombre de la aplicación “myapp”, SequenceID “1234” y nivel de registro “INFO”.
En la pestaña “Transformación”, seleccionar la transformación “Labels to fields” para la etiqueta “SequenceID”. Esto convertirá la etiqueta SequenceID en un campo.
En la pestaña “Opciones”, habilitar la ordenación y seleccionar el campo llamado “SequenceID” para la ordenación.
Guardar el panel y ver los registros en formato de tabla con las entradas ordenadas según el SequenceID.
Nota: Si encuentras un error al agregar la transformación “Labels to fields” para la etiqueta SequenceID, puede ser debido a la presencia de múltiples valores en el menú desplegable. En este caso, asegúrate de que la consulta sea lo suficientemente específica para obtener los registros con solo un valor para la etiqueta SequenceID.