On Tue, Mar 25, 2008 at 10:23:34PM +0100, Martin Pala wrote: > the problem is fixed in CVS ... it was triggered by the combination of > the "if changed checksum" test and "restart" action which freed the > checksum before xstrdup was called.
Thank you. It works fine now: the restart action propagates upwards on a change of the config file, and everything remains monitored. I only notice a minor anomoly now, which is spurious blank lines in syslog: Mar 26 08:25:25 localhost monit[24709]: 'testapp_pen.conf' checksum was changed for /etc/pen.d/testapp.conf Mar 26 08:25:25 localhost monit[24709]: 'testapp_pen.conf' trying to restart Mar 26 08:25:25 localhost monit[24709]: 'testapp_pen' stop: Mar 26 08:25:25 localhost monit[24709]: /bin/bash Mar 26 08:25:25 localhost monit[24709]: Mar 26 08:25:25 localhost monit[24709]: -c Mar 26 08:25:25 localhost monit[24709]: Mar 26 08:25:25 localhost monit[24709]: kill -s SIGTERM `cat /var/run/pen/testapp.pid` Mar 26 08:25:25 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: 'testapp_pen' start: Mar 26 08:25:26 localhost monit[24709]: /usr/bin/pen Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: -F Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: /etc/pen.d/testapp.conf Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: -u Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: nobody Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: -p Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: /var/run/pen/testapp.pid Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: -C Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: 127.0.0.1:9999 Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:26 localhost monit[24709]: 127.0.0.1:10000 Mar 26 08:25:26 localhost monit[24709]: Mar 26 08:25:57 localhost monit[24709]: 'testapp_pen.conf' checksum has not changed The corresponding config lines are: check process testapp_pen with pidfile /var/run/pen/testapp.pid start program = "/usr/bin/pen -F /etc/pen.d/testapp.conf -u nobody -p /var/run/pen/testapp.pid -C 127.0.0.1:9999 127.0.0.1:10000" stop program = "/bin/bash -c 'kill -s SIGTERM `cat /var/run/pen/testapp.pid`'" ... Regards, Brian. _______________________________________________ monit-dev mailing list monit-dev@nongnu.org http://lists.nongnu.org/mailman/listinfo/monit-dev