Monitoring status Services Linux, Kirim Notifikasi ke Email dan Telegram Menggunakan Script BASH

ByYusuf Ayuba

Monitoring status Services Linux, Kirim Notifikasi ke Email dan Telegram Menggunakan Script BASH

Beberapa waktu lalu, server saya mengalami trouble yaitu beberapa service seperti DNS, Apache, MySql sering crash sendiri. Penyebabnya kemungkinan beban yang berlebihan ataupun mungkin bisa juga disebabkan oleh hal lainnya :). Ketika serviceservice ini crash, secara otomatis website maupun aplikasi-aplikasi web yang ada diserver tersebut menjadi tidak bisa diakses lagi.

Solusi yang saya lakukan pada awalnya adalah me-restart server ataupun me-restart serviceservice yang crash tadi. Namun, karena intensitas crash-nya dalam level sering cukup merepotkan karena saya harus selalu login terlebih dahulu ke server lalu melakukan restart terhadap service-service yang crash tersebut.

Karena itulah saya lalu membuat script bash sederhana yang bertugas memantau service-service yang ada. Cara kerjanya yaitu ketika service-service tersebut non aktif, secara otomatis akan direstart lalu mengirimkan notifikasi melalui email dan juga ke telegram saya.

System Requirement

Sebelum lanjut, silahkan penuhi item-item berikut:

  1. Ubuntu, Centos
  2. sendmail
  3. Akun email
  4. Akun Telegram
  5. Bot Telegram

Langkah-langkah pembuatan

1. Buatlah bot telegram menggunakan BotFather (https://telegram.me/BotFather)

2. Buatlah folder script dalam folder root (nama dan lokasi folder silahkan disesuaikan)

3. Buatlah file kosong bernama mail.txt didalam folder tersebut diatas, kemudian buat lagi file lib.inc dan service-check.sh difolder yang sama yang masing-masing isinya seperti dibawah ini

File lib.inc

Silahkan sesuaikan isian dari variabel FROM, EMAIL, SERVICES, TOKEN dan CHAT_ID

File service-check.sh

Perhatikan baris PATH khususnya bagian terakhir :/root/script, silahkan disesuaikan dengan lokasi dari script BASH anda.

Jika semua script diatas telah selesai dibuat, silahkan ditest dengan cara ketikkan perintah sh service-check.sh. Script akan mengirimkan notifikasi ketika service-service yang ada di list dalam keadaan non aktif.

Check status service

Agar script ini bisa aktif secara otomatis, tambahkan perintah sh service-check.sh ini kedalam cronjob dengan durasi permenit.

Cronjob

Sekian artikel singkat ini, semoga bermanfaat (*)

About the author

Yusuf Ayuba administrator

1 Comment so far

kenshinPosted on9:31 am - Aug 8, 2020

ubuntu 18 pathnya ga jalan.. d ganti apa ya

Leave a Reply to kenshin Cancel reply

%d bloggers like this: