DonKiShoot
02-28-2007, 07:44 PM
Pour les personnes utilisant perfparse, ayant des difficultées à récupérer les nombres à virgules, voici ma petite histoire et son heureux dénouement.
Voici ma commande de check :
/usr/local/nagios/libexec/check_http -H toto.fr
OK - HTTP/1.1 302 Found - 0.007 second response time |time=0.006556s;;;0.000000 size=433B;;;0
Or mes graph de temps de réponses était désesperement vide.
Normal car dans ma table perfdata_service_bin j'avais ceci :
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) time (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27time%27) 2007-02-28 18:28:08 0 NULL NULL 0
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) size (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27size%27) 2007-02-28 18:28:08 14146 NULL NULL 0
Je me suis dit il n'aime pas les nombres à virgule avec des '.' mon coco.
Alors on va lui mettre des ',' :-);)
Voici ma nouvelle commande process-service-perfdata :
/usr/bin/printf "%b" "$TIMET$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICEOUTPUT $\t$SERVICESTATE$\t$SERVICEPERFDATA$\n" | sed -e 's/\./,/g' | /usr/local/nagios/bin/perfparse-log2mysql
Et depuis je n'ai plus de problèmes :
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) time (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27time%27) 2007-02-28 18:43:08 0.114069 NULL NULL 0
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) size (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27size%27) 2007-02-28 18:43:08 14146 NULL NULL 0
PS: J'ai aussi modifié perfdata_service_metric (http://srv78supervision/phpmysql/tbl_properties_structure.php?db=nagios&token=96cf6dceea8fd0dca09bb25d9127296c&table=perfdata_service_metric) car il m'avait mis comme metric un truc du genre '.125784s' que j'ai remplacé par 's'
C quand même bien pourri perfparse ;) ;)
Voici ma commande de check :
/usr/local/nagios/libexec/check_http -H toto.fr
OK - HTTP/1.1 302 Found - 0.007 second response time |time=0.006556s;;;0.000000 size=433B;;;0
Or mes graph de temps de réponses était désesperement vide.
Normal car dans ma table perfdata_service_bin j'avais ceci :
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) time (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27time%27) 2007-02-28 18:28:08 0 NULL NULL 0
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) size (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27size%27) 2007-02-28 18:28:08 14146 NULL NULL 0
Je me suis dit il n'aime pas les nombres à virgule avec des '.' mon coco.
Alors on va lui mettre des ',' :-);)
Voici ma nouvelle commande process-service-perfdata :
/usr/bin/printf "%b" "$TIMET$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICEOUTPUT $\t$SERVICESTATE$\t$SERVICEPERFDATA$\n" | sed -e 's/\./,/g' | /usr/local/nagios/bin/perfparse-log2mysql
Et depuis je n'ai plus de problèmes :
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) time (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27time%27) 2007-02-28 18:43:08 0.114069 NULL NULL 0
SRV92FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60host_name%60+%3D+%27SRV92FNX%27) FNX (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60service_description%60+%3D+%27FNX%2 7) size (http://srv78supervision/phpmysql/sql.php?db=nagios&table=perfdata_service_metric&token=96cf6dceea8fd0dca09bb25d9127296c&pos=0&session_max_rows=30&dontlimitchars=0&sql_query=SELECT+%2A+FROM+%60perfdata_service_metr ic%60+WHERE+%60metric%60+%3D+%27size%27) 2007-02-28 18:43:08 14146 NULL NULL 0
PS: J'ai aussi modifié perfdata_service_metric (http://srv78supervision/phpmysql/tbl_properties_structure.php?db=nagios&token=96cf6dceea8fd0dca09bb25d9127296c&table=perfdata_service_metric) car il m'avait mis comme metric un truc du genre '.125784s' que j'ai remplacé par 's'
C quand même bien pourri perfparse ;) ;)