Panduan Cron
Panduan

Saat Tugas Cron Tidak Berjalan: Log dan Debugging

Menangkap output·MAILTO·checklist pemeriksaan log

cron biasanya gagal secara diam-diam meski terjadi kesalahan. Jika ekspresi sudah benar menurut alat ini tetapi tugas tetap tidak berjalan, kemungkinan besar masalahnya bukan pada ekspresi melainkan pada lingkungan eksekusi. Berikut cara mempersempit penyebabnya secara berurutan.

Simpan output ke file. cron secara default mengirim standard output·standard error tugas melalui email, dan jika email tidak dikonfigurasi, output itu langsung hilang. Dengan menambahkan >> /var/log/myjob.log 2>&1 di belakang perintah untuk menyimpan stdout dan stderr ke file log, Anda bisa langsung memeriksa apa yang terjadi.

Terima notifikasi dengan MAILTO. Jika Anda menaruh MAILTO="you@example.com" di bagian atas crontab, output·kesalahan tugas akan dikirim ke alamat itu. Ini adalah pengaman paling mudah untuk mencegah kegagalan diam-diam. Sebaliknya, jika Anda tidak ingin email, kosongkan dengan MAILTO="".

Lihat log sistem. Pada keluarga Debian·Ubuntu gunakan grep CRON /var/log/syslog, dan pada lingkungan systemd gunakan journalctl -u cron (atau crond) untuk memeriksa apakah cron memicu tugas. Pembedaan penting di sini adalah 'apakah eksekusi dicoba' berbeda dari 'apakah skrip berhasil'.

Terakhir, checklist penyebab yang umum. ① Apakah semua perintah·file ditentukan dengan path absolut ② Apakah PATH yang diperlukan sudah dideklarasikan di crontab ③ Apakah skrip punya izin eksekusi (chmod +x) ④ Apakah tugas dimasukkan ke crontab pengguna yang benar (crontab root dan pengguna biasa terpisah). Periksa keempat hal ini, lalu verifikasi ulang ekspresinya sendiri dengan penerjemah ini.

Sumber Daya

Kumpulan Jadwal

Resep yang bisa langsung disalin dan dipakai

Cheat Sheet Sintaks

5 field dan karakter khusus sekilas

Makro & Alias

Ekspresi singkat seperti @daily

Panduan

Panduan praktis untuk memahami cron dengan benar dan mengurangi kesalahan