diff --git a/monit-default-config-name.patch b/monit-default-config-name.patch new file mode 100644 index 0000000..23073ec --- /dev/null +++ b/monit-default-config-name.patch @@ -0,0 +1,11 @@ +--- monitor.h.renamed_config 2008-12-07 01:15:10.000000000 +0100 ++++ monitor.h 2008-12-07 01:15:19.000000000 +0100 +@@ -71,7 +71,7 @@ + + + #define VERSION PACKAGE_VERSION +-#define MONITRC "monitrc" ++#define MONITRC "monit.conf" + #define TIMEFORMAT "%Z %b %e %T" + #define STRERROR strerror(errno) + #define STRLEN 256 diff --git a/monit-no-startup-msg.patch b/monit-no-startup-msg.patch new file mode 100644 index 0000000..a6f28a6 --- /dev/null +++ b/monit-no-startup-msg.patch @@ -0,0 +1,15 @@ +--- monitor.c.nomsg 2007-07-29 16:23:26.000000000 -0400 ++++ monitor.c 2008-12-22 21:49:36.000000000 -0500 +@@ -459,12 +459,6 @@ + + Run.once= FALSE; + +- if(can_http()) +- LogInfo("Starting %s daemon with http interface at [%s:%d]\n", +- prog, Run.bind_addr?Run.bind_addr:"*", Run.httpdport); +- else +- LogInfo("Starting %s daemon\n", prog); +- + if(Run.init != TRUE) + daemonize(); + diff --git a/monit-sysv-initscript b/monit-sysv-initscript index af7ad49..85f1651 100644 --- a/monit-sysv-initscript +++ b/monit-sysv-initscript @@ -1,26 +1,23 @@ #!/bin/bash # -# Init file for Monit process monitor. +# Init file for Monit system monitor # Written by Stewart Adam # based on script by Dag Wieers . # # chkconfig: - 98 02 -# description: This starts the Monit system monitor +# description: Utility for monitoring services on a Unix system # # processname: monit # config: /etc/monit.conf # pidfile: /var/run/monit -# Short-Description: Monit system monitor +# Short-Description: Monit is a system monitor # Source function library. . /etc/init.d/functions -# FIXME: Should we also use /var/run/${prog}.pid? - ### Default variables CONFIG="/etc/monit.conf" prog="monit" -desc="process monitor" # Check if requirements are met [ -x /usr/bin/monit ] || exit 1 @@ -29,8 +26,8 @@ desc="process monitor" RETVAL=0 start() { - echo -n $"Starting $desc ($prog): " - daemon $prog -c "$CONFIG" + echo -n $"Starting $prog: " + daemon $prog RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog @@ -38,7 +35,7 @@ start() { } stop() { - echo -n $"Shutting down $desc ($prog): " + echo -n $"Shutting down $prog: " killproc $prog RETVAL=$? echo @@ -52,7 +49,7 @@ restart() { } reload() { - echo -n $"Reloading $desc ($prog): " + echo -n $"Reloading $prog: " monit -c "$CONFIG" reload RETVAL=$? echo diff --git a/monit.logrotate b/monit.logrotate new file mode 100644 index 0000000..7b5c701 --- /dev/null +++ b/monit.logrotate @@ -0,0 +1,10 @@ +/var/log/monit { + missingok + notifempty + size 100k + create 0644 root root + postrotate + /sbin/service monit condrestart > /dev/null 2>&1 || : + endscript + +} diff --git a/monit.spec b/monit.spec index 15875a1..a8b6d8f 100644 --- a/monit.spec +++ b/monit.spec @@ -1,6 +1,6 @@ Name: monit Version: 4.10.1 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Manages and monitors processes, files, directories and devices Group: Applications/Internet @@ -8,6 +8,9 @@ License: GPLv3+ URL: http://www.tildeslash.com/monit Source0: http://www.tildeslash.com/monit/dist/monit-%{version}.tar.gz Source1: monit-sysv-initscript +Source2: monit.logrotate +Patch0: monit-default-config-name.patch +Patch1: monit-no-startup-msg.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: flex @@ -26,22 +29,39 @@ and can execute meaningful causal actions in error situations. %prep %setup -q - +%patch0 -b .confname +%patch1 -b .nomsg %build %configure \ --disable-static make %{?_smp_mflags} - %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT -# overwrite perms -%{__install} -p -D -m0755 monit $RPM_BUILD_ROOT%{_bindir}/monit -%{__install} -p -D -m0755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/monit -%{__install} -p -D -m0600 monitrc $RPM_BUILD_ROOT%{_sysconfdir}/monit.conf +install -p -D -m0755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/monit +install -p -D -m0600 monitrc $RPM_BUILD_ROOT%{_sysconfdir}/monit.conf +install -p -D -m0755 monit $RPM_BUILD_ROOT%{_bindir}/monit + +# Log file & logrotate config +install -p -D -m0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/monit +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log +install -m0600 /dev/null $RPM_BUILD_ROOT%{_localstatedir}/log/monit + +# Let's include some good defaults +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/monit.d +echo " +# set daemon mode timeout to 1 minute +set daemon 60 +# Include all files from %{_sysconfdir}/monit.d/ +include %{_sysconfdir}/monit.d/*" >> $RPM_BUILD_ROOT%{_sysconfdir}/monit.conf + +echo "# log to monit.log +set logfile /var/log/monit +" > $RPM_BUILD_ROOT%{_sysconfdir}/monit.d/logging + %clean rm -rf $RPM_BUILD_ROOT @@ -53,32 +73,42 @@ rm -rf $RPM_BUILD_ROOT %preun if [ $1 = 0 ]; then - /sbin/service monit stop >/dev/null 2>&1 - /sbin/chkconfig --del monit + /sbin/service monit stop >/dev/null 2>&1 + /sbin/chkconfig --del monit fi %postun if [ "$1" -ge "1" ]; then - /sbin/service monit condrestart >/dev/null 2>&1 || : + /sbin/service monit condrestart >/dev/null 2>&1 || : fi %files %defattr(-,root,root,-) -%doc CHANGES.txt CONTRIBUTORS COPYING FAQ.txt LICENSE PLATFORMS README README.DEVELOPER README.SSL STATUS UPGRADE.txt -%doc %{_mandir}/man1/monit.1* +%doc CHANGES.txt CONTRIBUTORS COPYING FAQ.txt LICENSE PLATFORMS README README.DEVELOPER README.SSL STATUS UPGRADE.txt %config(noreplace) %{_sysconfdir}/monit.conf +%config(noreplace) %{_sysconfdir}/monit.d/logging +%config(noreplace) %{_sysconfdir}/logrotate.d/monit +%{_localstatedir}/log/monit +%{_sysconfdir}/monit.d/ %{_initrddir}/monit %{_bindir}/%{name} +%{_mandir}/man1/monit.1* %changelog +* Mon Dec 22 2008 Stewart Adam 4.10.1-8 +- Tweak configuration defaults: include /etc/monit.d/*, log to /var/log/monit + and set daemon time to 60s +- Don't use $desc in initscript +- Add patch to search for monit.conf by default (#475044) +- Add patch to remove redundant startup message + * Mon Feb 18 2008 Fedora Release Engineering - 4.10.1-7 - Autorebuild for GCC 4.3 * Wed Dec 05 2007 Release Engineering - 4.10.1-6 - Rebuild for deps - * Wed Dec 5 2007 Stewart Adam 4.10.1-5 - Rebuild to fix broken deps on libssl.so.6 and libcrypto.so.6