aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Erdmann <dywi@mailerd.de>2014-02-15 21:10:30 +0100
committerAndré Erdmann <dywi@mailerd.de>2014-02-15 21:10:30 +0100
commit7a80bfc20a4d08da340101f60624301c47f8b527 (patch)
tree3f1ce4b6c0320436df9587cbd5ac28e60061f8f4 /roverlay/recipe
parentconfig/repo.list, rstan: fix src_uri (diff)
downloadR_overlay-7a80bfc20a4d08da340101f60624301c47f8b527.tar.gz
R_overlay-7a80bfc20a4d08da340101f60624301c47f8b527.tar.bz2
R_overlay-7a80bfc20a4d08da340101f60624301c47f8b527.zip
roverlay, logging: don't rotate empty log files
Diffstat (limited to 'roverlay/recipe')
-rw-r--r--roverlay/recipe/easylogger.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/roverlay/recipe/easylogger.py b/roverlay/recipe/easylogger.py
index d09028f..2b6281b 100644
--- a/roverlay/recipe/easylogger.py
+++ b/roverlay/recipe/easylogger.py
@@ -10,6 +10,7 @@ __all__ = [ 'setup', 'setup_console', 'setup_file', 'setup_initial',
'setup_initial_console', 'setup_syslog'
]
+#import errno
import sys
import logging
import logging.handlers
@@ -137,8 +138,17 @@ def setup_file ( conf ):
if rotating:
# using per-run log files
- # rotate after handler creation if log file already exists
- rotate_now = os.path.exists ( logfile )
+ # rotate after handler creation if log file exists and is not empty
+ try:
+ statinfo = os.stat ( logfile )
+ except OSError:
+ # log file does not exist
+ # (probably, could check oserr.errno == errno.ENOENT)
+ rotate_now = False
+ else:
+ rotate_now = ( statinfo.st_size > 0 )
+ del statinfo
+
fh = logging.handlers.RotatingFileHandler (
logfile,
backupCount=conf.get ( 'LOG.FILE.rotate_count', 3 )