Migrar desde cron-job.org
Traslada tus jobs de cron-job.org a SteadyCron paso a paso — recrea cada job de URL en un manifiesto YAML, añade reintentos y alertas, y desactiva los jobs antiguos.
cron-job.org es un buen pinger de URL gratuito. Cuando un job empieza a importar — una tarea de facturación, una sincronización de datos, cualquier cosa que un cliente nota cuando se detiene en silencio — necesitas reintentos, timeouts, alertas de verdad y un registro de ejecución auditable. Ese es el hueco que cubre SteadyCron, con planes definidos en YAML o Terraform en lugar de en un dashboard.
No hay archivo de exportación: la migración es un bucle manual corto.
1. Lista tus jobs de cron-job.org
En la consola de cron-job.org, anota para cada job:
- la URL, el método HTTP y el body si lo hay
- el plan y la zona horaria
- las cabeceras personalizadas (p. ej., un token que comprueba tu endpoint)
2. Recrea cada job en un manifiesto
steadycron manifest add job añade jobs de uno en uno a steadycron.yaml:
steadycron manifest add job --kind http --name warm-cache --schedule "*/15 * * * *"
O directamente en el manifiesto:
jobs:
- id: warm-cache
name: Warm cache
kind: http
method: POST
url: https://app.example.com/tasks/warm-cache
schedule: "*/15 * * * *"
timezone: UTC
retries: 3
headers:
Authorization: Bearer ${CRON_SECRET} # se resuelve desde --env-file al aplicar
Después valida y aplica:
steadycron validate steadycron.yaml
steadycron apply steadycron.yaml --env-file secrets.env --namespace prod
3. Ejecuta ambos en paralelo y luego cambia
Deja que ambos servicios llamen al endpoint durante un día o dos (tarea idempotente, o planes desplazados unos minutos). Cuando el registro de SteadyCron muestre runs en verde, desactiva el job de cron-job.org.
Qué ganas
| cron-job.org | SteadyCron | |
|---|---|---|
| Reintentos ante fallos | No | Configurables con backoff exponencial |
| Control de timeout | Fijo, corto | Por job, configurable |
| Monitorización heartbeat de tus propios crons | No | Sí |
| Canales de alerta | Email, Slack, Discord, Telegram, webhook | |
| Planes en git (YAML / Terraform) | No | Sí — validate, plan, apply |
| Historial de ejecución | Básico | Estado, respuesta y duración por run |
| Alojamiento | UE | UE (RGPD nativo, DPA firmado) |
Siguientes pasos
- YAML y CLI — el flujo completo del manifiesto
- HTTP jobs — request builder, reintentos, timeouts
- Alertas — dirige los fallos al canal correcto