Streaming en vivo
Por defecto, jelou logs hace streaming de logs en tiempo real:
jelou logs mi-funcion
# ▸ Streaming logs for mi-funcion
# ▸ Press Ctrl+C to stop
#
# 10:30:01 INFO Buscando cliente { telefono: "593987654321" }
# 10:30:02 WARN API externa lenta { latency: 2300 }
# 10:31:15 INFO Buscando cliente { telefono: "593912345678" }
La flag --follow / -f es equivalente (es el comportamiento por defecto):
jelou logs mi-funcion --follow
Logs históricos
Para obtener logs pasados en lugar de streaming:
jelou logs mi-funcion --history
# ◇ Fetched 47 logs
#
# 10:25:01 INFO Deployed successfully
# 10:30:01 INFO Buscando cliente { telefono: "593987654321" }
# 10:30:02 WARN API externa lenta { latency: 2300 }
Escribir logs desde tu función
Usa ctx.log() dentro del handler para escribir logs estructurados:
handler: async (input, ctx) => {
ctx.log("Procesando pedido", {
telefono: input.telefono,
company: ctx.company.id,
requestId: ctx.requestId,
});
const resultado = await procesarPedido(input);
ctx.log("Pedido completado", { resultado });
return resultado;
}
ctx.log() escribe JSON estructurado a stdout:
{
"requestId": "a1b2c3d4-...",
"function": "mi-funcion",
"company": 42,
"timestamp": "2026-04-07T15:30:01.234Z",
"args": ["Procesando pedido", { "telefono": "593987654321", "company": 42 }]
}
console.log(), console.warn() y console.error() también funcionan y son capturados por la plataforma, pero ctx.log() agrega metadatos útiles (requestId, function, company, timestamp) automáticamente.
Logs de cron
Para ver el historial de ejecuciones cron:
jelou cron logs mi-funcion
# ◇ Found 12 log entries
#
# ▸ Time Tool State HTTP
# ▸ 4/7/2026, 9:00:00 AM default DELIVERED 200
# ▸ 4/7/2026, 3:00:00 AM default DELIVERED 200
# ▸ 4/6/2026, 9:00:00 AM default ERROR 500
Filtrar por estado
jelou cron logs mi-funcion --state ERROR
Estados posibles: DELIVERED, ERROR, RETRY, RETRY_SCHEDULED, ACTIVE, FAILED.
Paginación
jelou cron logs mi-funcion --cursor <cursor>
El cursor se muestra al final de la salida cuando hay más resultados disponibles.
JSON mode
Para integrar con herramientas externas, usa --json:
# Logs como JSON lines (streaming)
jelou logs mi-funcion --json
# Logs históricos como JSON
jelou logs mi-funcion --history --json
# Cron logs como JSON
jelou cron logs mi-funcion --json
En CI/CD, combina --json con herramientas como jq para filtrar logs:jelou logs mi-funcion --history --json | jq 'select(.level == "ERROR")'