Network cihazları, sunucular ve üzerinde SNMP agent bulunduran tüm cihazlardan snmp verisi çekmek için basit bir script paylaşmak istiyorum.
Perl Net::SNMP kütüphanesini kullandığımız bu scriptte SNMP bağlantısı kurup belirlediğimiz bir OID ye karşılık gelen değer için istekte bulunuyor ve elde ettiğimiz sonucu ekrana bastırıyoruz.
IP, Community String ve istenen OID değerini scripte arguman olarak dışarıdan veriyoruz.
Bu scripti geliştirerek basit bir monitoring uygulaması yazmak mümkün olacaktır.
use Net::SNMP;
# SNMP OID değeri arguman olarak disaridan alinir
my $OID => $ARGV[2]
# IP adresi ve SNMP community string disaridan arguman olarak alinir
($session,$error) = Net::SNMP->session(IP => $ARGV[0],Community => $ARGV[1]);
die "SNMP Baglanti Hatasi: $error" unless ($session);
# Alinan SNMP OID degeri ile SNMP istegi yapilarak sonuc degiskenine atanir
$sonuc = $session->get_request($OID); die "SNMP Istegi Hatasi: ".$session->error unless (defined $sonuc); $session->close;
# SNMP OID degerine karsilik gelen deger ekrana bastirilir
print "SNMP OID Degeri: ".$sonuc->{".$OID."}";
Hiç yorum yok:
Yorum Gönder