Lección 5
Flujo de depuración cron
Parsea, valida, previsualiza próximas ejecuciones y evita errores de día de la semana.
Publicar una línea cron sin verificación es cómo los equipos descubren que su backup corre al mediodía en lugar de medianoche. Trata schedules como código: parsea, explica, previsualiza.
Paso 1: Normaliza la línea
- Solo cinco campos (salvo que tu plataforma documente seis)
- Sin espacios extra; comentarios eliminados (
# backup joben su propia línea en crontab, no dentro de campos) - Confirma que no mezclas sintaxis Quartz
?con cron Unix
Pega la expresión en un parser y lee el desglose campo a campo.
Paso 2: Lee la descripción legible
Una buena descripción responde:
- ¿Qué minutos y horas disparan?
- ¿Están restringidos día del mes y día de la semana — y aplica semántica OR?
- ¿Es «cada mañana laborable» o algo más extraño?
Si el resumen en español (o localizado) no coincide con la intención, corrige campos antes de desplegar.
Paso 3: Previsualiza próximas horas de ejecución
Genera al menos tres a cinco instantes próximos en:
- El huso horario de ejecución de la plataforma
- UTC (para correlacionar con logs y Actions)
Compara con un calendario — especialmente en límites de mes, transiciones DST y meses cortos.
Paso 4: Contrasta con documentación de plataforma
| Pregunta | Acción |
|---|---|
| ¿GitHub Actions? | Asume UTC |
| ¿K8s CronJob? | Configura timeZone explícitamente |
| ¿Crontab Linux? | Conoce timedatectl del servidor |
| ¿Motor de seis campos? | Traduce, no copies a ciegas |
Lista de comprobación de errores habituales
| Error | Síntoma |
|---|---|
Confusión domingo 7 vs 0 | Día de la semana desplazado |
| DOM y DOW ambos configurados esperando AND | Ejecuciones extra |
*/60 en campo minuto | Schedule inválido o vacío |
| 9 a.m. local escrito para Actions UTC | Job corre a hora de pared incorrecta |
| Job largo + intervalo corto | Ejecuciones superpuestas |
Paso 5: Documenta en el runbook
Registra expresión, huso horario, plataforma, responsable y duración esperada. Enlaza monitorización que pruebe que la última ejecución tuvo éxito.
Conclusión clave
Parsea → describe → previsualiza → documenta. Si algún paso discrepa de las expectativas, detente. Los bugs de cron son silenciosos hasta que finanzas pregunta por qué los informes corrieron dos veces.