web-dev-qa-db-ja.com

Nagios check_procsは、NRPEから呼び出されたときに間違った値を返します

Myserverという名前の監視対象サーバーのnrpe.confに次の行を追加しました。

command[check_mysrv_process]=/usr/lib/nagios/plugins/check_procs -c 1: -C Java -a mysrv

これは期待どおりにローカルで機能します:

myserver> /usr/lib/nagios/plugins/check_procs -c 1: -C Java -a mysrv
PROCS OK: 1 process with command name 'Java', args 'mysrv'

ただし、nagiosサーバーからnrpeを介してチェックを実行すると、特定のパターンを持つプロセスの数(通常は0または1)に関係なく、出力がゼロになります。

mynagiosserver>/opt/nagios/libexec/check_nrpe -H myserver -u -c check_mysrv_process
PROCS CRITICAL: 0 processes with command name 'Java', args 'mysrv'

詳細:

  • NRPEバージョン= 2.12
  • Nagiosプラグインバージョン= 1.4.16
  • OSタイプ:SLES 11.3
  • Mysrvを含む特定のプロセス名は長いものです。

[〜#〜]編集[〜#〜]

cat /proc/pid of nrpe/environを実行すると、次の行が表示されます。

CONSOLE =/dev/consoleSELINUX_INIT = YESROOTFS_FSTYPE = ext3Shell =/bin/shTERM = linuxROOTFS_FSCK = 0crashkernel = 256M-:128MLC_ALL = POSIXINIT_VERSION = sysvinit-2.86REDIRECT =/dev/tty1COLUMNS = 96PATH =/bin:/ sbin:/ usr/bin: /usr/sbinvga=0x314DO_CONFIRM=RUNLEVEL=5PWD=/SPLASHCFG=/etc/bootsplash/themes/SLES/config/bootsplash-800x600.cfgPREVLEVEL=NLINES=33HOME=/SHLVL=2splash=silentSPLASH=yesROOTFS_BLKDEV=/dev/sda2_=/ sbin/startprocDAEMON =/usr/sbin/nrpe

2
trikelef

これにより、COLUMN環境変数によって報告されたバグについて考えるようになります。

ここに、COLUMNS=96があります。

これは、COLUMN値を超えるプロセスコマンドラインが失われることを意味します。

プロセス名が長いとおっしゃっていましたが、この問題に直面している可能性があります。

nrpe.cfgのコマンド定義でCOLUMN変数を増やすことができます。

command[check_myprogram_proc]=COLUMN=256 /usr/lib/nagios/plugins/check_procs ...

参照: http://christoph-probst.com/article.php/20110718143604605

3
krisFR