diff --git a/conf/logrotate/Makefile.am b/conf/logrotate/Makefile.am index 4f7b7536..35efa2de 100644 --- a/conf/logrotate/Makefile.am +++ b/conf/logrotate/Makefile.am @@ -1,52 +1,45 @@ # Copyright (c) 2009 Red Hat, Inc. # # Authors:Jan Friesse (jfriesse@redhat.com) # Andrew Beekhof # Steven Dake (sdake@redhat.com) # # This software licensed under BSD license, the text of which follows: # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # - Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # - Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # - Neither the name of the MontaVista Software, Inc. nor the names of its # contributors may be used to endorse or promote products derived from this # software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF # THE POSSIBILITY OF SUCH DAMAGE. MAINTAINERCLEANFILES = Makefile.in EXTRA_DIST = corosync-reopen.in corosync-copytruncate.in -if HAVE_QB_LOG_FILE_REOPEN -corosync: corosync-reopen.in - $(SED) -e 's#@''LOGDIR@#${LOGDIR}#g' \ - -e 's#@''SBINDIR@#$(sbindir)#g' \ - $< > $@ -else corosync: corosync-copytruncate.in $(SED) -e 's#@''LOGDIR@#${LOGDIR}#g' \ $< > $@ -endif logrotatecorosyncdir = ${LOGROTATEDIR} logrotatecorosync_DATA = corosync clean-local: rm -f corosync diff --git a/conf/logrotate/corosync-reopen.in b/conf/logrotate/corosync-reopen.in index 839c5dae..730fb741 100644 --- a/conf/logrotate/corosync-reopen.in +++ b/conf/logrotate/corosync-reopen.in @@ -1,12 +1,17 @@ +# This logrotate method has two main problems and it's kept only for reference: +# 1. It does fail when corosync is not running (solvable by adding "|| true") +# 2. If (for some reason) cfgtool -L fails, logrotate fails and corosync keeps +# logging into old file. Added "|| true" makes situation even worse +# because logrotate removes file but corosync keeps logging into it. @LOGDIR@/corosync.log { missingok compress daily rotate 31 minsize 2048 notifempty nocreate postrotate @SBINDIR@/corosync-cfgtool -L endscript }