[Nagios-devel] Passive service checks should sometimes reschedule active checks?

Support forum for Nagios Core, Nagios Plugins, NCPA, NRPE, NSCA, NDOUtils and more. Engage with the community of users including those using the open source solutions.
Locked
Guest

[Nagios-devel] Passive service checks should sometimes reschedule active checks?

Post by Guest »

This is a multi-part message in MIME format.

------=_NextPart_000_0076_01C41043.67B73650
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit


Incidentally, I'm looking at Nagios 2.0, I'm not sure what 1.x is
doing...

When a passive service check comes in which triggers a state type change
(hard->soft or soft->hard), I'd think it would be a good idea to
reschedule any associated active service check according to new check
interval (retry_check_interval or normal_check_interval, respectively).
This way, if the max_check_attempts > 1, and retry_check_interval is
much shorter than normal_check_interval, a critical passive service
check will cause an active service check to be executed earlier,
possibly leading to a new critical *hard* state earlier.

As it is now, it looks like a passive service check never causes an
active check to get rescheduled. Would this change make sense?

Thanks for any input,
Chris


P.S. I've attached the patches I posted earlier here (before they
weren't attachments; not sure why I did it that way). Hopefully they
could make their way into the current CVS someday? Please see for
details:

http://sourceforge.net/mailarchive/foru ... &forum_id=
1872


------=_NextPart_000_0076_01C41043.67B73650
Content-Type: application/octet-stream;
name="nagios-last-hostgroups-incorrect.patch"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
filename="nagios-last-hostgroups-incorrect.patch"

*** ../nagios-orig/xdata/xodtemplate.c Mon Feb 16 20:59:32 2004=0A=
--- xdata/xodtemplate.c Mon Mar 15 14:38:01 2004=0A=
***************=0A=
*** 6408,6414 ****=0A=
=0A=
/* add this list to the hostgroup members directive */=0A=
if(temp_hostgroup->members=3D=3DNULL)=0A=
! temp_hostgroup->members=3Dstrdup(temp_ptr);=0A=
else{=0A=
new_members=3D(char =
*)realloc(temp_hostgroup->members,strlen(temp_hostgroup->members)+strlen(=
temp_host->host_name)+2);=0A=
if(new_members!=3DNULL){=0A=
--- 6408,6414 ----=0A=
=0A=
/* add this list to the hostgroup members directive */=0A=
if(temp_hostgroup->members=3D=3DNULL)=0A=
! temp_hostgroup->members=3Dstrdup(temp_host->host_name);=0A=
else{=0A=
new_members=3D(char =
*)realloc(temp_hostgroup->members,strlen(temp_hostgroup->members)+strlen(=
temp_host->host_name)+2);=0A=
if(new_members!=3DNULL){=0A=

------=_NextPart_000_0076_01C41043.67B73650
Content-Type: application/octet-stream;
name="nagios-strip-chars-on-notify.patch"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
filename="nagios-strip-chars-on-notify.patch"

*** ../nagios-orig/base/notifications.c Tue Feb 10 23:48:47 2004=0A=
--- base/notifications.c Fri Mar 5 13:52:43 2004=0A=
***************=0A=
*** 577,582 ****=0A=
--- 577,583 ----=0A=
char temp_buffer[MAX_INPUT_BUFFER];=0A=
int early_timeout=3DFALSE;=0A=
double exectime;=0A=
+ int macro_options=3DSTRIP_ILLEGAL_MACRO_CHARS|ESCAPE_MACRO_CHARS;=0A=
=0A=
#ifdef DEBUG0=0A=
printf("notify_contact_of_service() start\n");=0A=
***************=0A=
*** 599,609 ****=0A=
command_name_ptr=3Dstrtok(command_name,"!");=0A=
=0A=
/* get the raw command line */=0A=
! =
get_raw_command_line(temp_commandsmember->command,raw_command,sizeof(raw_=
command),0);=0A=
strip(raw_command);=0A=
=0A=
/* process any macros contained in the argument */=0A=
! =
process_macros(raw_command,processed_command,sizeof(processed_command),0)=
;=0A=
strip(processed_command);=0A=
=0A=
/* run the notification command */=0A=
--- 600,610 ----=0A=
command_name_ptr=3Dstrtok(command_name,"!");=0A=
=0A=
/* get the raw command line */=0A=
! =
get_raw_command_line(temp_commandsmember->command,raw_command,sizeof(raw_=
command),macro_options);=0A=
strip(raw_command);=0A=
=0A=
/* process any macros contained in the argument */=0A=
! =
process_macros(raw_command,processed_command,sizeof(processed_command),ma=
cro_options);=0A=
strip(processed_command);=0A=
=0A=
/* run the notification command */=0A=
***************=0A=
*** 1250,1257 ****=0A=
char processed_command[MAX_INPUT_BUFFER];=0A=
int early_timeout=3DFALSE;=0A=
doub

...[email truncated]...


This post was automatically imported from historical nagios-devel mailing list archives
Original poster: [email protected]
Locked