[NEW PATCH] BZ#725240 logrotate libvirtd.log often (via gerrit-bot)
Dan Kenigsberg
danken at redhat.com
Tue Aug 2 10:39:33 UTC 2011
New patch submitted by Dan Kenigsberg (danken at redhat.com)
You can review this change at: http://gerrit.usersys.redhat.com/773
commit 4b9e2d3961c907455b890a42cfba837085d51755
Author: Dan Kenigsberg <danken at redhat.com>
Date: Mon Aug 1 23:05:39 2011 +0300
BZ#725240 logrotate libvirtd.log often
Edit libvirt's /etc/logrotate.d/libvirtd and call it every 15 minutes so
that /var/log/libvirtd.log is rotated and compressed more often
v2:
- use correct path to /etc/logrotate.d/libvirtd in cont.d rule
- keep /etc/logrotate.d/libvirtd mode
- use full path to coreutils
v3:
- use valid comments in /etc/logrotate.d/libvirtd
Change-Id: I6a702e6f54a2c950f850096bdd36949e5947a8fd
diff --git a/vdsm.spec.in b/vdsm.spec.in
index 2465a1f..17318b3 100644
--- a/vdsm.spec.in
+++ b/vdsm.spec.in
@@ -160,7 +160,7 @@ then
tmp_sudoers=$(mktemp)
cp -a /etc/sudoers $tmp_sudoers
- /bin/sed -i -e "/# vdsm/,/# end vdsm/d" $tmp_sudoers
+ /bin/sed -i -e "/# vdsm/,/# end vdsm/d" $tmp_sudoers /etc/logrotate.d/libvirtd
if outerr=$(/usr/sbin/visudo -c -f $tmp_sudoers 2>&1) ; then
/bin/cp -a $tmp_sudoers /etc/sudoers
else
@@ -172,6 +172,7 @@ then
lconf=/etc/libvirt/libvirtd.conf
qconf=/etc/libvirt/qemu.conf
ldconf=/etc/sysconfig/libvirtd
+
sed -i '/# by vdsm$/d' $lconf $qconf $ldconf
/usr/sbin/semanage boolean -m -S targeted -F /dev/stdin << _EOF
@@ -288,6 +289,7 @@ machines without running real guests.
%config(noreplace) %{_sysconfdir}/rwtab.d/vdsm
%attr (440,root,root) %{_sysconfdir}/sudoers.d/50_vdsm
%{_sysconfdir}/cron.hourly/vdsm-logrotate
+%{_sysconfdir}/cron.d/vdsm-libvirt-logrotate
%{_datadir}/%{vdsm_name}/guestIF.py*
%{_datadir}/%{vdsm_name}/logUtils.py*
%{_datadir}/%{vdsm_name}/dsaversion.py*
diff --git a/vdsm/Makefile b/vdsm/Makefile
index c0f2ad3..15088d0 100644
--- a/vdsm/Makefile
+++ b/vdsm/Makefile
@@ -112,9 +112,11 @@ install: all sudoers.vdsm vdsm.conf.sample
cp sudoers.vdsm $(PREFIX)/etc/sudoers.d/50_vdsm
mkdir -p $(PREFIX)/etc/logrotate.d
mkdir -p $(PREFIX)/etc/cron.hourly
+ mkdir -p $(PREFIX)/etc/cron.d
mkdir -p $(PREFIX)$(SOSPLUGINDIR)
cp -p vdsm-logrotate.conf $(PREFIX)/etc/logrotate.d/vdsm
cp -p vdsm-logrotate $(PREFIX)/etc/cron.hourly
+ cp -p vdsm-libvirt-logrotate $(PREFIX)/etc/cron.d
cp -p vdsm-sosplugin.py $(PREFIX)$(SOSPLUGINDIR)/vdsm.py
mkdir -p $(PREFIX)$(MANDIR)/man8
cp -p vdsmd.8 $(PREFIX)$(MANDIR)/man8/
diff --git a/vdsm/vdsm-libvirt-logrotate b/vdsm/vdsm-libvirt-logrotate
new file mode 100644
index 0000000..5e70cde
--- /dev/null
+++ b/vdsm/vdsm-libvirt-logrotate
@@ -0,0 +1,2 @@
+10,25,40,55 * * * * root /usr/sbin/logrotate /etc/logrotate.d/libvirtd
+
diff --git a/vdsm/vdsm-logrotate.conf b/vdsm/vdsm-logrotate.conf
index 12e16ad..64bef03 100644
--- a/vdsm/vdsm-logrotate.conf
+++ b/vdsm/vdsm-logrotate.conf
@@ -20,13 +20,3 @@
/var/log/core/*.dump.xz {
maxage 7
}
-/var/log/libvirtd*.log {
- rotate 100
- missingok
- copytruncate
- size 15M
- compress
- compresscmd /usr/bin/xz
- uncompresscmd /usr/bin/unxz
- compressext .xz
-}
diff --git a/vdsm/vdsmd b/vdsm/vdsmd
index 0591cb2..f5ecc53 100755
--- a/vdsm/vdsmd
+++ b/vdsm/vdsmd
@@ -320,7 +320,28 @@ configure_libvirt()
local lnetwork=/etc/libvirt/qemu/networks/autostart/default.xml
rm -f $lnetwork
- ovirt_store_config $lconf $qconf $ldconf
+ local llogr=/etc/logrotate.d/libvirtd
+ local stanza=`mktemp`
+ /bin/cat > "$stanza" <<EOF
+# vdsm
+/var/log/libvirtd.log {
+ rotate 100
+ missingok
+ copytruncate
+ size 15M
+ compress
+ compresscmd /usr/bin/xz
+ uncompresscmd /usr/bin/unxz
+ compressext .xz
+}
+# end vdsm
+EOF
+ /bin/cat "$llogr" >> "$stanza"
+ local oldmod=`/usr/bin/stat --format=%a "$llogr"`
+ /bin/mv "$stanza" "$llogr"
+ /bin/chmod "$oldmod" "$llogr"
+
+ ovirt_store_config "$lconf" "$qconf" "$ldconf" "$llogr"
# vdsm makes extensive use of nfs-exported images
/usr/sbin/semanage boolean -m -S targeted -F /dev/stdin << _EOF
More information about the vdsm-patches
mailing list