“Monitoring yang baik bukan tentang alat yang mahal, tetapi tentang mengetahui masalah sebelum pengguna mengeluh.”
Monitoring server merupakan salah satu tugas penting bagi administrator sistem. Namun, tidak semua lingkungan membutuhkan solusi monitoring yang kompleks seperti Prometheus, Grafana, Zabbix, atau Nagios.
Untuk VPS kecil, server internal, laboratorium jaringan, maupun server sekolah, sering kali dibutuhkan solusi yang sederhana, ringan, dan cepat diterapkan.
Salah satu cara paling efektif adalah menggunakan script Bash yang secara otomatis memantau penggunaan CPU, RAM, dan Disk, kemudian mengirimkan notifikasi ke Telegram ketika terjadi kondisi kritis.
Kelebihan metode ini adalah tidak memerlukan instalasi software tambahan selain Bash dan Curl yang umumnya sudah tersedia di hampir semua distribusi Linux.
Mengapa Monitoring Telegram Sangat Efektif?
Telegram menjadi pilihan populer karena:
- Gratis digunakan
- Notifikasi real-time
- Mudah dikonfigurasi
- Tidak memerlukan email server
- Dapat digunakan di VPS maupun server lokal
- Mendukung grup dan channel
Ketika server mengalami lonjakan penggunaan sumber daya, administrator dapat langsung menerima notifikasi di smartphone.

Parameter yang Dipantau
Script ini memantau tiga komponen utama server:
1. Penggunaan CPU
CPU yang terlalu tinggi dapat mengindikasikan:
- Proses berjalan berlebihan
- Serangan bot atau DDoS
- Aplikasi mengalami loop
- Database overload
Perintah yang digunakan:
top -bn1 | grep "Cpu(s)" | awk '{print $2}'
Threshold yang direkomendasikan:
CPU > 80%
2. Penggunaan RAM
RAM yang hampir habis dapat menyebabkan:
- Server menjadi lambat
- Swap aktif berlebihan
- Aplikasi crash
- OOM Killer menghentikan proses
Perintah yang digunakan:
free | awk '/Mem/{printf("%.0f", $3/$2 * 100)}'
Threshold yang direkomendasikan:
RAM > 85%
3. Penggunaan Disk
Storage penuh merupakan salah satu penyebab paling umum layanan gagal berjalan.
Dampaknya antara lain:
- Database gagal menulis data
- Log tidak dapat disimpan
- Website error
- Backup gagal
Perintah yang digunakan:
df / | awk 'NR==2{print $5}' | tr -d '%'
Threshold yang direkomendasikan:
Disk > 90%
Cara Mengirim Alert ke Telegram
Telegram menyediakan API sederhana untuk mengirim pesan menggunakan bot.
Format perintah:
curl -s -X POST https://api.telegram.org/bot$TOKEN/sendMessage \
-d chat_id=$CHAT_ID \
-d text="$MSG"
Parameter yang diperlukan:
TOKEN
Didapatkan dari BotFather.
Contoh:
123456789:AAxxxxxxxxxxxxxxxxxxxxxxxx
CHAT_ID
ID pengguna, grup, atau channel Telegram tujuan.
Contoh:
123456789
Contoh Script Monitoring Lengkap
#!/bin/bash
TOKEN="TOKEN_BOT"
CHAT_ID="CHAT_ID"
CPU=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}' | cut -d'.' -f1)
RAM=$(free | awk '/Mem/{printf("%.0f", $3/$2 * 100)}')
DISK=$(df / | awk 'NR==2{print $5}' | tr -d '%')
MSG=""
if [ "$CPU" -gt 80 ]; then
MSG="$MSG CPU Server Tinggi: ${CPU}%\n"
fi
if [ "$RAM" -gt 85 ]; then
MSG="$MSG RAM Server Tinggi: ${RAM}%\n"
fi
if [ "$DISK" -gt 90 ]; then
MSG="$MSG Disk Server Hampir Penuh: ${DISK}%\n"
fi
if [ ! -z "$MSG" ]; then
curl -s -X POST https://api.telegram.org/bot$TOKEN/sendMessage \
-d chat_id=$CHAT_ID \
-d text="$MSG"
fi
Script di atas hanya sekitar 30 baris namun sudah mampu memberikan notifikasi otomatis ketika kondisi server melewati batas yang ditentukan.
Menjalankan Otomatis dengan Cron
Agar monitoring berjalan terus-menerus, tambahkan Cron Job.
Edit crontab:
crontab -e
Tambahkan:
*/5 * * * * /root/monitor.sh
Artinya script akan dijalankan setiap 5 menit.
Tips Agar Monitoring Lebih Optimal
Tambahkan Hostname Server
Agar mudah mengidentifikasi server yang bermasalah.
Contoh:
HOST=$(hostname)
Lalu masukkan ke pesan alert.
Tambahkan Timestamp
Untuk mengetahui kapan masalah terjadi.
DATE=$(date)
Gunakan Cooldown Alert
Mencegah Telegram dibanjiri notifikasi ketika kondisi kritis berlangsung lama.
Misalnya:
- Kirim alert maksimal 1 kali per jam
- Simpan timestamp terakhir ke file
Pantau Service Penting
Selain CPU, RAM, dan Disk, Anda dapat memeriksa:
- Nginx
- Apache
- MariaDB
- PostgreSQL
- Docker
- SSH
Contoh:
systemctl is-active nginx
Kapan Script Monitoring Ini Cocok Digunakan?
Solusi ini ideal untuk:
- VPS pribadi
- Server sekolah
- Server laboratorium
- Hosting WordPress
- Server UMKM
- Server backup
- Homelab
- Proxmox node kecil
Jika infrastruktur masih sederhana, pendekatan ini jauh lebih ringan dibanding membangun stack monitoring lengkap.
Keunggulan Dibanding Monitoring Kompleks
| Fitur | Script Bash | Monitoring Stack |
|---|---|---|
| Instalasi Cepat | Ya | Tidak |
| Ringan | Ya | Tidak |
| Resource Kecil | Ya | Tidak |
| Dashboard Visual | Tidak | Ya |
| Alert Telegram | Ya | Ya |
| Cocok VPS Kecil | Ya | Tidak |
Bagi banyak administrator, solusi sederhana sering kali sudah cukup untuk mendeteksi masalah sebelum berdampak pada layanan.

Kesimpulan
Monitoring server tidak selalu harus menggunakan infrastruktur besar dan kompleks. Dengan Bash, Curl, Cron, dan Telegram, Anda sudah dapat membangun sistem monitoring ringan yang mampu memberikan notifikasi otomatis ketika CPU, RAM, atau Disk mencapai kondisi kritis.
Pendekatan ini sangat cocok untuk VPS, server Linux skala kecil hingga menengah, serta lingkungan pembelajaran yang membutuhkan solusi sederhana namun efektif.
Semakin cepat mengetahui masalah, semakin cepat pula tindakan perbaikan dapat dilakukan sebelum layanan terganggu.
Frequently Asked Questions (FAQ)
1. Apakah script ini bisa berjalan di semua Linux?
Ya. Hampir semua distribusi Linux modern mendukung Bash, Cron, dan Curl.
2. Apakah perlu menginstal software monitoring tambahan?
Tidak. Cukup Bash dan Curl.
3. Seberapa sering script sebaiknya dijalankan?
Umumnya setiap 5 menit menggunakan Cron.
4. Apakah bisa mengirim alert ke grup Telegram?
Bisa. Gunakan Chat ID grup Telegram.
5. Apakah script ini cocok untuk VPS kecil?
Sangat cocok karena penggunaan resource hampir tidak terasa.
6. Bisakah memonitor service seperti Nginx dan MySQL?
Bisa. Tambahkan pengecekan menggunakan systemctl.
7. Apakah alert dapat dikustomisasi?
Ya. Pesan Telegram dapat diubah sesuai kebutuhan.
Sudah mencoba script monitoring ini di server Anda? Bagikan pengalaman atau modifikasi script yang Anda gunakan pada kolom komentar.
Jika artikel ini bermanfaat, jangan lupa membagikannya ke rekan sysadmin, administrator jaringan, atau tim IT lainnya. Subscribe website ini untuk mendapatkan tutorial Linux, DevOps, server, dan jaringan terbaru yang praktis dan mudah diterapkan. Anda juga dapat membaca artikel lainnya seputar otomatisasi server, Bash scripting, serta monitoring infrastruktur Linux.