# Trazas

## Para qué sirve

Una **traza** es el recorrido completo de un pedido: entra por el sitio, pasa por el servicio de turnos, consulta la base de datos, llama a la pasarela de pagos y vuelve. Cada tramo se llama **paso** (los técnicos le dicen "span"). La pantalla te muestra cuánto tardó cada paso y cuál falló.

Sirve para contestar "¿por qué esta operación fue lenta?" o "¿dónde se rompió?".

## Cuándo usarlas

- Un usuario reportó que una reserva "se quedó colgada" y tenés el momento o el número de turno.
- Un servicio muestra errores en [Servicios](https://lymen.app/docs/datos/servicios/) y querés ver ejemplos concretos.
- Querés saber qué servicio demora más dentro de un proceso largo.

## Cómo se llega

- Desde **Explorar**, en la pestaña **Trazas**.
- Desde el detalle de un servicio, con "Trazas y logs".
- Desde un tile de eventos del [dashboard](https://lymen.app/docs/datos/dashboards/), con "Ver qué pasó".
- Desde un incidente.

La lista de trazas es para Sistemas y Administración.

## Lista de trazas

1. Elegí el período (hasta 31 días).
2. Usá los filtros de arriba para acotar.
3. Mirá el gráfico de dispersión: cada punto es un pedido. El eje vertical es lo que tardó. Los puntos con cuadrado rojo tuvieron error. Si hay incidentes en el período, una línea roja punteada marca cuándo empiezan.
4. Tocá un punto o una fila de la tabla para abrir una vista previa con la cascada de pasos.
5. Desde la vista previa podés abrir la traza completa.

La tabla muestra 20 trazas por página, con las columnas Hora, Pedido, Resultado, Duró, Pasos e ID.

### Filtros

| Filtro | Para qué sirve | Por defecto | Valores válidos | Impacto |
|---|---|---|---|---|
| Servicio | Solo pedidos de un servicio. | Todos los servicios | Los servicios con trazas | Solo lectura. |
| Operación | Solo una acción concreta (por ejemplo `POST /turnos`). | Todas las operaciones | Las operaciones del servicio | Solo lectura. |
| Resultado | Cómo terminó. | Todas | Todas, Con error, Lentas | "Lentas" usa un umbral calculado a partir del p95 del servicio (el 95 % de sus pedidos tarda menos que eso). |
| Duró más de | Filtra por duración mínima. | Vacío | De 1 a 3.600.000 milisegundos (una hora) | Solo lectura. |
| Buscar | Busca un texto. | Vacío | Hasta 80 caracteres: un ID de traza, un número de turno, etc. | Solo lectura. |

La lista trae como máximo las 1.000 trazas más recientes del filtro; si hay más, el gráfico lo aclara y el eje arranca en la más vieja traída.

## Detalle de una traza: "Qué pasó en esta operación"

| Bloque | Qué muestra |
|---|---|
| Cabecera | Duración total, cantidad de pasos, cuándo empezó, qué servicios participaron e ID de la operación. |
| Paso a paso | Una cascada: cada barra es un paso. El largo es lo que tardó y la posición es cuándo empezó. En rojo, los pasos con error. Con un anillo amarillo, "Donde más se demoró". Botones "Desplegar todo" y "Plegar todo". |
| Detalle del paso | Al tocar una barra: "Duró" (total), "Propio" (sin contar lo que esperó a los pasos de adentro), "Empezó a los" (desde el inicio de la operación), atributos e ID del paso. Si falló: "Este paso falló" con el motivo. |
| Registros (logs) | Lo que anotaron los sistemas durante la operación, filtrable por nivel (Todos, Error, etc.). |
| Eventos de negocio | Lo que la operación significó para el negocio (por ejemplo, "turno reservado"). |
| Métricas en ese momento | Cómo estaban los servicios involucrados en ese instante (en la vista previa). |

Un **log** es una línea de texto que un sistema escribe cuando pasa algo.

## Datos personales

Los atributos de los pasos y los logs pueden contener datos sensibles si tus aplicaciones los escriben. Las reglas de [Privacidad](https://lymen.app/docs/datos/privacidad/) los pueden ocultar o quitar antes de guardarlos. Si un dato ya se guardó, no se puede "des-ocultar".

## Campos y opciones

| Elemento | Para qué sirve | Por defecto | Valores válidos | Impacto |
|---|---|---|---|---|
| Período | Ventana de la lista. | Últimas 24 horas | Hasta 31 días | Solo lectura. |
| Filtros | Ver arriba. | Sin filtros | | Solo lectura. |
| Páginas | Navegar la lista. | Página 1 | | Solo lectura. |

Esta pantalla es de consulta: no cambia ninguna configuración.

## Cuánto tiempo se guardan

Las trazas se guardan por un tiempo limitado, que defines en [Almacenamiento y retención](https://lymen.app/docs/datos/almacenamiento/). Para ahorrar espacio, también podés guardar solo una parte de las trazas con [Muestreo](https://lymen.app/docs/datos/muestreo/): lo que no se guarda no se puede ver después.

## Ejemplos

- **"La reserva de las 10:32 falló"**: filtrá por servicio, Resultado "Con error" y un período alrededor de las 10:32. Abrí la traza y buscá el paso en rojo.
- **"El sitio está lento"**: elegí "Lentas" y mirá en la cascada qué paso tiene el anillo amarillo "Donde más se demoró".
- **Buscar por número de turno**: escribí el número en "Buscar" si tu aplicación lo guarda como dato de la traza.

## Problemas comunes

- **"No encontramos esa traza"**: ya no está guardada (venció la retención o el muestreo la descartó) o el link tiene un error.
- **"Ese código de operación no es válido"**: el ID de una traza tiene 32 caracteres (números y letras de la a a la f). Revisá el link.
- **"Esta operación no dejó registros (logs)"**: la aplicación no escribió logs durante ese pedido, o no están asociados a la traza.
- **No aparecen trazas de una aplicación**: probablemente todavía no está mandando trazas, o el muestreo las descarta.
