Fix bug in logging to host logs.
Signed-off-by: Steve Howard <showard@google.com>
git-svn-id: http://test.kernel.org/svn/autotest/trunk@1432 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/scheduler/monitor_db b/scheduler/monitor_db
index 3e6b371..8009230 100755
--- a/scheduler/monitor_db
+++ b/scheduler/monitor_db
@@ -6,7 +6,7 @@
__author__ = "Paul Turner <pjt@google.com>"
import os, sys, tempfile, shutil, MySQLdb, time, traceback, subprocess, Queue
-import optparse, signal, smtplib, socket, datetime, stat, pwd
+import optparse, signal, smtplib, socket, datetime, stat, pwd, errno
from common import global_config
RESULTS_DIR = '.'
@@ -536,16 +536,24 @@
if self.log_file:
try:
os.makedirs(os.path.dirname(self.log_file))
+ except OSError, exc:
+ if exc.errno != errno.EEXIST:
+ log_stacktrace(
+ 'Unexpected error creating logfile '
+ 'directory for %s' % self.log_file)
+ try:
out_file = open(self.log_file, 'a')
out_file.write("\n%s\n" % ('*'*80))
- out_file.write("%s> %s\n" % (time.strftime("%X %x"), cmd))
+ out_file.write("%s> %s\n" %
+ (time.strftime("%X %x"), cmd))
out_file.write("%s\n" % ('*'*80))
- except:
- pass
-
+ except (OSError, IOError):
+ log_stacktrace('Error opening log file %s' %
+ self.log_file)
+
if not out_file:
out_file = open('/dev/null', 'w')
-
+
in_devnull = open('/dev/null', 'r')
print "cmd = %s" % cmd
print "path = %s" % os.getcwd()