From: Karl DeBisschop Date: Thu, 28 Aug 2003 11:56:15 +0000 (+0000) Subject: add perf data X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=5771f158516c191a79920f9e314d81eb05c4a7d0;p=nagiosplug.git add perf data git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@704 f882894a-f735-0410-b71e-b25c423dba1c --- diff --git a/plugins/check_game.c b/plugins/check_game.c index dd16777..3ebf6af 100644 --- a/plugins/check_game.c +++ b/plugins/check_game.c @@ -43,11 +43,11 @@ int port = 0; int verbose; -int qstat_game_players_max = 4; -int qstat_game_players = 5; -int qstat_game_field = 2; -int qstat_map_field = 3; -int qstat_ping_field = 5; +int qstat_game_players_max = -1; +int qstat_game_players = -1; +int qstat_game_field = -1; +int qstat_map_field = -1; +int qstat_ping_field = -1; int @@ -143,12 +143,18 @@ main (int argc, char **argv) result = STATE_CRITICAL; } else { - printf ("OK: %s/%s %s (%s), Ping: %s ms\n", + printf ("OK: %s/%s %s (%s), Ping: %s ms|%s %s\n", ret[qstat_game_players], ret[qstat_game_players_max], ret[qstat_game_field], ret[qstat_map_field], - ret[qstat_ping_field]); + ret[qstat_ping_field], + perfdata ("players", atol(ret[qstat_game_players]), "", + FALSE, 0, FALSE, 0, + TRUE, 0, TRUE, atol(ret[qstat_game_players_max])), + perfdata ("ping", atol(ret[qstat_ping_field]), "", + FALSE, 0, FALSE, 0, + TRUE, 0, FALSE, 0)); } /* close the pipe */ @@ -246,6 +252,8 @@ process_arguments (int argc, char **argv) break; case 129: /* index of player count field */ qstat_game_players = atoi (optarg); + if (qstat_game_players_max == 0) + qstat_game_players_max = qstat_game_players - 1; if (qstat_game_players < 0 || qstat_game_players > QSTAT_MAX_RETURN_ARGS) return ERROR; break; @@ -272,7 +280,22 @@ process_arguments (int argc, char **argv) int validate_arguments (void) { - return OK; + if (qstat_game_players_max < 0) + qstat_game_players_max = 4; + + if (qstat_game_players < 0) + qstat_game_players = 5; + + if (qstat_game_field < 0) + qstat_game_field = 2; + + if (qstat_map_field < 0) + qstat_map_field = 3; + + if (qstat_ping_field < 0) + qstat_ping_field = 5; + + return OK; } @@ -323,3 +346,18 @@ Usage: %s [-p port] [-gf game_field] [-mf map_field]\n\ [-pf ping_field]\n"), progname); printf (_(UT_HLP_VRS), progname, progname); } + +/****************************************************************************** + * + * Test Cases: + * + * ./check_game --players 7 -p 8 --map 5 qs 67.20.190.61 26000 + * + * qstat -raw , -qs 67.20.190.61 + * ==> QS,67.20.190.61,Nightmare.fintek.ca,67.20.190.61:26000,3,e2m1,6,0,83,0 + * + * qstat -qs 67.20.190.61 + * ==> ADDRESS PLAYERS MAP RESPONSE TIME NAME + * ==> 67.20.190.61 0/ 6 e2m1 79 / 0 Nightmare.fintek.ca + * + ******************************************************************************/