# Pemantauan Cron

Source: https://instatus.com/help/id/monitoring/cron

Monitor cron memberi setiap pekerjaan terjadwal (backup, proses batch, atau skrip berulang) sebuah URL unik untuk di-ping, dan memberi tahu Anda saat ping terlambat atau tidak ada. Pekerjaan ditandai menurun saat melewati periodenya dan mati saat juga melewati waktu tenggang.

Sama seperti [monitor lainnya](https://instatus.com/help/id/monitoring), saat sebuah cron job gagal, Anda bisa berkolaborasi dengan tim untuk [menyelesaikan insidennya](https://instatus.com/help/id/incident-response) dan, jika mau, memperbarui [halaman status](https://instatus.com/help/id/status-page) Anda.

| At a glance | Details |
| :-- | :-- |
| [Cara kerja](https://instatus.com/help/id/monitoring/cron#jenis-monitor) | Pekerjaan Anda mem-ping URL unik setiap kali berjalan |
| [Periode](https://instatus.com/help/id/monitoring/cron#monitor-dianggap-berhasil-jika) | Seberapa sering pekerjaan harus berjalan |
| [Tenggang](https://instatus.com/help/id/monitoring/cron#monitor-dianggap-berhasil-jika) | Waktu tambahan sebelum pekerjaan terlambat ditandai mati |
| [Ping terlambat](https://instatus.com/help/id/monitoring/cron#monitor-dianggap-berhasil-jika) | Menurun setelah periode, mati setelah tenggang |
| [Sinyal kegagalan](https://instatus.com/help/id/monitoring/cron#menandakan-kegagalan) | Minta URL dengan tambahan /fail |
| [Waktu eksekusi](https://instatus.com/help/id/monitoring/cron#mengukur-waktu-eksekusi-pekerjaan) | Ping /start saat pekerjaan mulai, URL saat selesai |

Berikut contoh tampilan daftar monitor cron Anda:

![Daftar monitor cron](https://instatus.com/help/monitors/cron-list.png)

## Apa yang dilakukan monitor cron?

- Memverifikasi bahwa cron job Anda berjalan tepat waktu (menggunakan ping dari pekerjaan Anda).
- Mendapat peringatan jika sebuah pekerjaan terlambat atau tidak selesai.
- Terintegrasi dengan Slack, email, SMS, panggilan telepon, dan lainnya untuk peringatan.

Saat Anda mengeklik sebuah monitor cron, Anda bisa melihat detail lebih lanjut:

![Detail monitor cron](https://instatus.com/help/monitors/cron-item.png)

## Bagaimana cara menambahkan monitor cron?

Buka proyek Anda → Monitor → Tambahkan monitor, pilih **Cron/Heartbeat**, lalu arahkan pekerjaan Anda ke URL yang dibuat dan tetapkan periode serta waktu tenggangnya.

![Tambahkan monitor](https://instatus.com/help/monitors/cron-add.png)

### Jenis monitor

Pilih **Cron/Heartbeat** sebagai jenis monitornya.

![Jenis monitor cron](https://instatus.com/help/monitors/type-cron.png)

Sebuah URL unik akan dibuat untuk Anda. Cron job Anda harus mengirim permintaan HTTP (`HEAD`, `GET`, atau `POST`) ke URL ini setiap kali dijalankan.

### Monitor dianggap berhasil jika

Monitor cron berhasil bila pekerjaan Anda melakukan ping ke URL yang dibuat sesuai jadwal. Anda bisa mengonfigurasi:

- **Periode:** Seberapa sering pekerjaan harus dijalankan (mis. setiap 15 menit).
- **Tenggang:** Waktu tambahan yang diberikan sebelum pekerjaan dianggap mati.

Jika periode tercapai dan pekerjaan tidak melakukan ping, monitor akan ditandai menurun.

Jika tenggang tercapai dan pekerjaan tidak melakukan ping, monitor akan ditandai mati.

Anda bisa menyiapkan [peringatan](https://instatus.com/help/id/monitoring/alerts) untuk mendapat notifikasi saat sebuah pekerjaan gagal, menurun, atau pulih.

## Menandakan kegagalan

Kirim permintaan ke URL monitor dengan tambahan `/fail` untuk menandai pekerjaan sebagai gagal, meskipun pekerjaan itu berjalan dan sudah mem-ping monitor.

Ini berguna jika skrip Anda mengalami galat dan Anda ingin Instatus segera mencatat pekerjaan itu sebagai gagal.

- **Ping keberhasilan**: `https://cron.instatus.com/your-unique-url`
- **Ping kegagalan**: `https://cron.instatus.com/your-unique-url/fail`

Saat sinyal kegagalan diterima, monitor akan ditandai mati, dan peringatan akan langsung dikirim sesuai [pengaturan peringatan](https://instatus.com/help/id/monitoring/alerts) Anda.

## Mengukur waktu eksekusi pekerjaan

Kirim dua permintaan, `/start` saat pekerjaan Anda dimulai dan ping keberhasilan atau kegagalan saat selesai, dan Instatus mencatat selisih waktunya sebagai waktu eksekusi pekerjaan:

1. **Sinyal mulai**: Kirim permintaan ke `/start` saat pekerjaan Anda dimulai
2. **Sinyal berhasil/gagal**: Kirim permintaan ke URL dasar saat pekerjaan Anda selesai atau gagal

- **Ping mulai**: `https://cron.instatus.com/your-unique-url/start`
- **Ping keberhasilan**: `https://cron.instatus.com/your-unique-url`
- **Ping kegagalan**: `https://cron.instatus.com/your-unique-url/fail`

Selisih waktu antara sinyal mulai dan sinyal berhasil akan dicatat sebagai waktu eksekusi pekerjaan. Ini membantu Anda melacak performa dan mengenali pekerjaan yang berjalan lebih lama dari perkiraan.

Jika pekerjaan Anda gagal setelah mengirim sinyal mulai, kirim sinyal kegagalan alih-alih sinyal keberhasilan agar ditandai gagal namun waktu eksekusinya tetap tercatat.

Selamat, Anda sudah menambahkan monitor cron pertama Anda!

- [Monitor Ping](https://instatus.com/help/id/monitoring/ping): Pelajari cara memantau endpoint ping Anda untuk uptime dan performa
