Bu akşam Gürcan Öztürk‘ün günlüğündeki NAGIOS mesajlarını iPhone’a göndermek konulu yazısını görünce aklıma 3 ay önce uyguladığım benzer bir yöntem geldi. Bende bir proje için nagios mesajlarını tweeter üzerinden göndermeyi istemiştim. Bunun için araştırma yaparken nitter adlı perl betiğine rastladım. Betik konsoldan çalışıyor. Kurulumu ve nagios üzerine uygulanması ise şu şekilde yapılıyor :
- Öncelikle bu adresten betiği indiriyoruz.
- Aşağıdaki komut ile gerekli kütüphaneleri yüklüyoruz.
aptitude install libnet-twitter-lite-perl libnet-oauth-perl
- Nitter ile göndereceğimiz nagios uyarılarının yanlış ellere ulaşmaması için tweet gönderilecek hesabın “Settings” bölümündeki “Account” kısmındaki “Protect my updates” seçeneğini işaretlemenizi öneriyorum.
- Daha sonra http://dev.twitter.com/apps adresi üzerinden hesabımıza giriş yapıyoruz.
- Sağ kenardaki “Register a new app” bölümüne giriyoruz.
- Program tanımı için benzersiz bir isim seçiyoruz. Daha sonra kısa açıklama ve web adresi kısımlarını da istediğimiz gibi doldurup “Application type” kısımını “client” olarak seçiyoruz. “Default Access Type” kısmını da “Read & Write” olarak seçiyoruz ve kayıt ediyoruz.
Burada üretilen “Consumer key” ve “Consumer secret” bize ileride lazım olacak not edin.
- Sağ taraftaki “My Access Token” kısmını seçiyoruz. Buradan üretilen “Access Token” ve “Access Token Secret” da nitter için gerekli bunları da not ediyoruz.
- Daha sonra nitter2 betiğini açıp not aldığımız değerleri gerekli yerlere giriyoruz.
nitter’ı 2 şekilde kullanabilirsiniz.
a. Özel mesaj yollamak için
nitter2.pl --dm --tweet "Merhaba Dünya"
b. Durum mesajı yollamak için
nitter2.pl --update --tweet "Merhaba Dünya"
şeklinde kullanmak gerekiyor.
Nagios üzerinden nitter ile tweet yollamak için nagios’a aşağıdaki komutları eklememiz gerekiyor.
define command {
command_name host-notify-twitter
command_line $USER1$/nitter2.pl --update --tweet "d @$_CONTACTTWIT$ [Nagios] $HOSTNAME$ is $HOSTSTATE$ [$SHORTDATETIME$]"
}
define command {
command_name service-notify-twitter
command_line $USER1$/nitter2.pl --update --tweet "d @$_CONTACTTWIT$ [Nagios] $HOSTNAME$/$SERVICEDESC$ is $SERVICESTATE$ [$SHORTDATETIME$]"
}
Böylece nagios uyarılarımızı nitter ile tweet olarak yollamak mümkün hale geliyor.
33 views
Recent Comments