mirror of
https://github.com/monitoring-plugins/monitoring-plugins.git
synced 2026-06-13 18:50:01 -04:00
Add check_nt -v INSTANCES (Alessandro Ren)
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1877 f882894a-f735-0410-b71e-b25c423dba1c
This commit is contained in:
parent
5640aa0757
commit
250a82a57c
3 changed files with 43 additions and 8 deletions
3
NEWS
3
NEWS
|
|
@ -1,5 +1,8 @@
|
|||
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
|
||||
|
|
|
|||
|
|
@ -229,3 +229,4 @@ Matteo HCE Valsasna
|
|||
Bernhard Fischer
|
||||
fabiodds
|
||||
Tom Payerle
|
||||
Alessandro Ren
|
||||
|
|
|
|||
|
|
@ -55,7 +55,8 @@ enum checkvars {
|
|||
CHECK_PROCSTATE,
|
||||
CHECK_MEMUSE,
|
||||
CHECK_COUNTER,
|
||||
CHECK_FILEAGE
|
||||
CHECK_FILEAGE,
|
||||
CHECK_INSTANCES
|
||||
};
|
||||
|
||||
enum {
|
||||
|
|
@ -414,7 +415,7 @@ int main(int argc, char **argv){
|
|||
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;
|
||||
|
|
@ -426,6 +427,21 @@ int main(int argc, char **argv){
|
|||
}
|
||||
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"));
|
||||
|
|
@ -483,14 +499,13 @@ int process_arguments(int argc, char **argv){
|
|||
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 */
|
||||
|
|
@ -533,6 +548,8 @@ int process_arguments(int argc, char **argv){
|
|||
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;
|
||||
|
|
@ -671,7 +688,7 @@ void print_help(void)
|
|||
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>,..."));
|
||||
|
|
@ -686,10 +703,24 @@ void print_help(void)
|
|||
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).");
|
||||
|
|
|
|||
Loading…
Reference in a new issue