nagios - nevyhodnocuje spravne (delsi)
Miroslav BENES
miroslav.benes na zdas.cz
Středa Květen 18 14:44:41 CEST 2005
> Zkuste dát do definice příkazu check-host-alive na začátek LC_ALL=C;
>
> Já to mám takhle a funguje to:
>
> # 'check-host-alive' command definition
> define command{
> command_name check-host-alive
> command_line LC_ALL=C; $USER1$/check_ping -H $HOSTADDRESS$
> -w 3000.0,80% -c 5000.0,100% -p 1
> }
U mě to v téhle podobě nezabralo, ale jinak máte pravdu - ping vrací
desetinná čísla s oddělovačem "." zatímco check_ping je očekává s
oddělovačem ","
> Má to nějaké problémy s LOCALE
Ano, ale nevím nevím kdo je na vině - podle nastavení locales by se
přece měli řídit oba, ne ?
Každopádně pomohlo, když jsem ping přejmenoval na ping-orig a jako ping
slouží tento wrapper :
#!/bin/bash
( /bin/ping-orig $1 $2 $3 $4 $5 $6 $7 $8 $9 | tr "." "," )
Teď už to hlásí (status.log) :
# Nagios 1.2 Status File
[1116420091] PROGRAM;1116419790;29504;1;0;0;1;1;1;1;0;0;1;0
[1116420091]
HOST;a00518;UP;1116419851;1116417126;0;3964;11247;0;1116419719;8;1;1;1;1;0;0.00;0;1;1;(Host
assumed to be up)
[1116420091]
SERVICE;a00518;PING;OK;1/3;HARD;1116420031;1116420091;ACTIVE;1;1;1;1116419861;0;OK;3954;11243;0;0;0;0;1;0;6;1;0;0.00;0;1;1;1;PING
OK - Packet loss = 0%, RTA = 18,82 ms
Škoda jenom, že check_ping má volání ping zadrátováno uvnitř - takže po
případném upg se ping může přepsat binárkou nové verze a zase bude po
ptákách ... :(
Další informace o konferenci Linux