check log file's mode prior to calling chmod

This commit is contained in:
vladimir.p
2011-08-26 00:00:13 +00:00
committed by Tarmac

View File

@@ -32,6 +32,7 @@ import json
import logging import logging
import logging.handlers import logging.handlers
import os import os
import stat
import sys import sys
import traceback import traceback
@@ -257,7 +258,10 @@ class NovaRootLogger(NovaLogger):
self.filelog = WatchedFileHandler(logpath) self.filelog = WatchedFileHandler(logpath)
self.addHandler(self.filelog) self.addHandler(self.filelog)
self.logpath = logpath self.logpath = logpath
os.chmod(self.logpath, FLAGS.logfile_mode)
st = os.stat(self.logpath)
if st.st_mode != (stat.S_IFREG | FLAGS.logfile_mode):
os.chmod(self.logpath, FLAGS.logfile_mode)
else: else:
self.removeHandler(self.filelog) self.removeHandler(self.filelog)
self.addHandler(self.streamlog) self.addHandler(self.streamlog)