Hizmetlerimle "(Hizmet kontrolü düzgün çıkmadı)" ve "(boş)" sonuçlarını nasıl çözebilirim?


10

Ben Nagios hizmet kontroller için bazı Perl tabanlı komut dosyalarını kullanıyorum ve almak (Service check did not exit properly)ve (null)Nagios içinde sonucunda ama senaryo komut satırında iyi çalışıyor.

enable_embedded_perl=0Nagios yapılandırmasında ayarlayarak veya bir tercümanın yolunu açıkça belirterek dahili Perl yorumlayıcısını devre dışı bırakmayı öneren çevrimiçi çözümler gördüm . Bu sorunla yardımcı olmadı.

Başka ne olabilir ki?


CLI yoluyla "harika" çalışmasının bir örneğini gösterebilir misiniz?
Keith

Yanıtlar:


11

Nagios kendi gömülü perl yorumlayıcısını içerir. Eklentiniz muhtemelen epn uyumlu değil.

Genel olarak devre dışı bırakmak veya komut dosyanız için devre dışı bırakmak isteyebilirsiniz. Bu dokümanlar sayfasının alt kısmında bunu nasıl yapacağınız gösterilmektedir.

Temel olarak, # nagios: -epnkomut dosyanızın ilk on satırında kendi satırına ekleyin . Bu, sorununuzu çözmelidir.

Ayrıca uyumlu hale getirebilirsiniz , ancak neredeyse kesinlikle belaya değmez.


Evet, öneri için teşekkürler. Her ne kadar bunun karşılaştığım sorun üzerinde herhangi bir etkisi olmadığını açıkça belirtmiş olsam da.
Der Hochstapler

Bu nagios için gerçek bir çözümdür. -epn olmadan, eklenti dahili olarak nagios tarafından dahil edilir ve yürütülür. -epn ile, ikili dosyalara veya bash komut dosyalarına benzer şekilde harici yürütülebilir olarak yüklenir. Sayfaya bakınız: nagios.sourceforge.net/docs/3_0/embeddedperl.html ve epn şikayetini düşünün
Znik

1
İki nokta üst üste, # nagios: -epndokümanlar ve testlerim için gereklidir .
idupree

1
Garip bir şekilde, şu anki Ubuntu LTS (18.04) sürümü nagios-plugins-standardının (2.2-3ubuntu2) bu sorunu yaşıyor. Ben de etkilenen eklentileri, örneğin değiştirirseniz şeyler çalışmak check_disk_smbve check_file_ageben ayarlamak veya eğeruse_embedded_perl_implicitly=0
Akom

Benim için düzelttim! Teşekkürler ...
Oscar Bravo

3

Nagios Exchange'den bazı Perl betikleri utils.pmPerl modülünü eklemeye çalışacaktır . İçinde bir yerde böyle bir çizgi bulacaksınız:

use lib "/usr/local/nagios/libexec";

Nagios'u Debian'a yüklerken, utils.pmdosyanın varsayılan konumu /usr/lib/nagios/plugins/utils.pm. Bu yüzden use libdirektif şöyle olmalıdır:

use lib "/usr/lib/nagios/plugins";

Komutu komut satırından yürütmek, büyük olasılıkla bulunduğunuz için çalıştı /usr/lib/nagios/plugins/, eklentinizi düzenledi.


2

Komutun önüne önek koyun /usr/bin/perl.

Bu çözüm daha çok bir çözümdür, muhtemelen bunu yapmak iyi bir fikir değildir, ancak en azından eklentiniz terminalden başlattığınızda olduğu gibi çalışmalıdır.

NOT: Deneyimlerime göre # nagios -epnoldukça sık çalışıyor, ancak bazen yeterli görünmüyor. Bu olduğunda, hatalı eklentilerin (komut dosyası çağrıldığında perl -w) birçok uyarı bildirdiğini fark ettim .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.