[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] xend: improve the rotation of qemu-dm logfiles.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1214906323 -3600 # Node ID 20966aa897390b622fd0d4286dc812a09450eb8c # Parent c33a40b4c22bfdd1cdc808bda2bd4d19f48ee4dc xend: improve the rotation of qemu-dm logfiles. Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@xxxxxxxxxxxxx> --- tools/examples/xend-config.sxp | 3 +++ tools/python/xen/xend/XendOptions.py | 7 +++++++ tools/python/xen/xend/image.py | 16 ++++++++++++---- 3 files changed, 22 insertions(+), 4 deletions(-) diff -r c33a40b4c22b -r 20966aa89739 tools/examples/xend-config.sxp --- a/tools/examples/xend-config.sxp Mon Jun 30 14:19:09 2008 +0100 +++ b/tools/examples/xend-config.sxp Tue Jul 01 10:58:43 2008 +0100 @@ -242,3 +242,6 @@ # Script to run when the label of a resource has changed. #(resource-label-change-script '') + +# Rotation count of qemu-dm log file. +#(qemu-dm-logrotate-count 10) diff -r c33a40b4c22b -r 20966aa89739 tools/python/xen/xend/XendOptions.py --- a/tools/python/xen/xend/XendOptions.py Mon Jun 30 14:19:09 2008 +0100 +++ b/tools/python/xen/xend/XendOptions.py Tue Jul 01 10:58:43 2008 +0100 @@ -132,6 +132,9 @@ class XendOptions: """Default script to configure a backend network interface""" vif_script = osdep.vif_script + """Default rotation count of qemu-dm log file.""" + qemu_dm_logrotate_count = 10 + def __init__(self): self.configure() @@ -350,6 +353,10 @@ class XendOptions: def get_vnc_x509_verify(self): return self.get_config_string('vnc-x509-verify', self.xend_vnc_x509_verify) + + def get_qemu_dm_logrotate_count(self): + return self.get_config_int("qemu-dm-logrotate-count", + self.qemu_dm_logrotate_count) class XendOptionsFile(XendOptions): diff -r c33a40b4c22b -r 20966aa89739 tools/python/xen/xend/image.py --- a/tools/python/xen/xend/image.py Mon Jun 30 14:19:09 2008 +0100 +++ b/tools/python/xen/xend/image.py Tue Jul 01 10:58:43 2008 +0100 @@ -378,10 +378,18 @@ class ImageHandler: # keep track of pid and spawned options to kill it later self.logfile = "/var/log/xen/qemu-dm-%s.log" % str(self.vm.info['name_label']) - if os.path.exists(self.logfile): - if os.path.exists(self.logfile + ".1"): - os.unlink(self.logfile + ".1") - os.rename(self.logfile, self.logfile + ".1") + + # rotate log + logrotate_count = XendOptions.instance().get_qemu_dm_logrotate_count() + if logrotate_count > 0: + if os.path.exists("%s.%d" % (self.logfile, logrotate_count)): + os.unlink("%s.%d" % (self.logfile, logrotate_count)) + for n in range(logrotate_count - 1, 0, -1): + if os.path.exists("%s.%d" % (self.logfile, n)): + os.rename("%s.%d" % (self.logfile, n), + "%s.%d" % (self.logfile, (n + 1))) + if os.path.exists(self.logfile): + os.rename(self.logfile, self.logfile + ".1") null = os.open("/dev/null", os.O_RDONLY) logfd = os.open(self.logfile, os.O_WRONLY|os.O_CREAT|os.O_TRUNC|os.O_APPEND) _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |