syslogd, exec and alarms

Darren Henderson darren at nighttide.net
Mon Aug 20 18:35:13 PDT 2007


I have a syslog.conf line that has a selector pointing to action that is a 
perl script. The script takes action based on the content of the line 
passed to it. Simple stuff. Works fine.

Wanting to be resource sensitive, I would like the script to terminate 
after so many idle seconds - its likely to get occasional bursts of input 
with quiet periods here and there. No problem, set an alarm with a maximum 
idle time and shutdown if it fires.

This works fine if I execute the script from the command line. Doesn't 
work at all if spawned by syslogd. I assume syslogd or the sh being fired 
to spawn the command are grabbing the alarm signal for themselves. I am 
missing something obvious. Is there any way to make this work?

As it is I can keep the program going all the time or I can have syslogd 
respawn it every time a line is sent. Neither option is appealing.

This problem seems to be relatively resistant to google searches for me 
thus far.

-Darren



More information about the freebsd-questions mailing list