summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 5640aa0)
raw | patch | inline | side by side (parent: 5640aa0)
author | Ton Voon <tonvoon@users.sourceforge.net> | |
Mon, 17 Dec 2007 11:47:33 +0000 (11:47 +0000) | ||
committer | Ton Voon <tonvoon@users.sourceforge.net> | |
Mon, 17 Dec 2007 11:47:33 +0000 (11:47 +0000) |
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1877 f882894a-f735-0410-b71e-b25c423dba1c
NEWS | patch | blob | history | |
THANKS.in | patch | blob | history | |
plugins/check_nt.c | patch | blob | history |
index b48676dc7c5d8106dd522d20397053ca19a903d3..37d2ac1e50f269798ff5ce8aa2defa2442ad4d6c 100644 (file)
--- a/NEWS
+++ b/NEWS
This file documents the major additions and syntax changes between releases.
+1.4.12 or 1.5 ??
+ Added ./check_nt -v INSTANCES to count number of instances (Alessandro Ren)
+
1.4.11 13th December 2007
Fixed check_http regression in 1.4.10 where following redirects to
relative URLs on virtual hosts failed if both "-H" and "-I" were used
diff --git a/THANKS.in b/THANKS.in
index 54fbfd571575c6faf4ede07078f9c36f367ea1e5..8d64f656e2145aaca379034612b5ef0ae61d2ae5 100644 (file)
--- a/THANKS.in
+++ b/THANKS.in
Bernhard Fischer
fabiodds
Tom Payerle
+Alessandro Ren
diff --git a/plugins/check_nt.c b/plugins/check_nt.c
index fe47a58bf4480098dabcfc92fe2097522d492312..b916cc017da5efdddf0d58cc2b5d7ccee5778655 100644 (file)
--- a/plugins/check_nt.c
+++ b/plugins/check_nt.c
CHECK_PROCSTATE,
CHECK_MEMUSE,
CHECK_COUNTER,
- CHECK_FILEAGE
+ CHECK_FILEAGE,
+ CHECK_INSTANCES
};
enum {
return_code=STATE_WARNING;
else
return_code=STATE_OK;
- }
+ }
else { /* inverse thresholds */
if(check_critical_value==TRUE && age_in_minutes <= critical_value)
return_code=STATE_CRITICAL;
}
break;
+ case CHECK_INSTANCES:
+ if (value_list==NULL)
+ output_message = strdup (_("No counter specified"));
+ else {
+ asprintf(&send_buffer,"%s&10&%s", req_password,value_list);
+ fetch_data (server_address, server_port, send_buffer);
+ if (!strncmp(recv_buffer,"ERROR",5)) {
+ printf("NSClient - %s\n",recv_buffer);
+ exit(STATE_UNKNOWN);
+ }
+ asprintf(&output_message,"%s",recv_buffer);
+ return_code=STATE_OK;
+ }
+ break;
+
case CHECK_NONE:
default:
usage4 (_("Please specify a variable to check"));
strcpy(argv[c],"-c");
}
- while (1){
+ while (1) {
c = getopt_long(argc,argv,"+hVH:t:c:w:p:v:l:s:d:",longopts,&option);
if (c==-1||c==EOF||c==1)
break;
- switch (c)
- {
+ switch (c) {
case '?': /* print short usage statement if args not parsable */
usage5 ();
case 'h': /* help */
vars_to_check=CHECK_COUNTER;
else if(!strcmp(optarg,"FILEAGE"))
vars_to_check=CHECK_FILEAGE;
+ else if(!strcmp(optarg,"INSTANCES"))
+ vars_to_check=CHECK_INSTANCES;
else
return ERROR;
break;
printf (" %s\n", "MEMUSE =");
printf (" %s\n", _("Memory use."));
printf (" %s\n", _("Warning and critical thresholds can be specified with -w and -c."));
- printf (" %s\n,", "SERVICESTATE =");
+ printf (" %s\n", "SERVICESTATE =");
printf (" %s\n", _("Check the state of one or several services."));
printf (" %s\n", _("Request a -l parameters with the following syntax:"));
printf (" %s\n", _("-l <service1>,<service2>,<service3>,..."));
printf (" %s\n", _("-l \"\\\\<performance object>\\\\counter\",\"<description>"));
printf (" %s\n", _("The <description> parameter is optional and is given to a printf "));
printf (" %s\n", _("output command which requires a float parameter."));
- printf (" %s\n\n", _("If <description> does not include \"%%\", it is used as a label."));
+ printf (" %s\n", _("If <description> does not include \"%%\", it is used as a label."));
printf (" %s\n", _("Some examples:"));
printf (" %s\n", "\"Paging file usage is %%.2f %%%%\"");
- printf (" %s\n\n", "\"%%.f %%%% paging file used.\"");
+ printf (" %s\n", "\"%%.f %%%% paging file used.\"");
+ printf (" %s\n", "INSTANCES =");
+ printf (" %s\n", _("Check any performance counter object of Windows NT/2000."));
+ printf (" %s\n", _("Syntax: check_nt -H <hostname> -p <port> -v INSTANCES -l <counter object>"));
+ printf (" %s\n", _("<counter object> is a Windows Perfmon Counter object (eg. Process),"));
+ printf (" %s\n", _("if it is two words, it should be enclosed in quotes"));
+ printf (" %s\n", _("The returned results will be a comma-separated list of instances on "));
+ printf (" %s\n", _(" the selected computer for that object."));
+ printf (" %s\n", _("The purpose of this is to be run from command line to determine what instances"));
+ printf (" %s\n", _(" are available for monitoring without having to log onto the Windows server"));
+ printf (" %s\n", _(" to run Perfmon directly."));
+ printf (" %s\n", _("It can also be used in scripts that automatically create Nagios service"));
+ printf (" %s\n", _(" configuration files."));
+ printf (" %s\n", _("Some examples:"));
+ printf (" %s\n\n", _("check_nt -H 192.168.1.1 -p 1248 -v INSTANCES -l Process"));
printf (_("Notes:"));
printf (" %s\n", _("- The NSClient service should be running on the server to get any information"));
printf (" %s\n", "(http://nsclient.ready2run.nl).");