diff options
author | 2014-02-15 21:10:30 +0100 | |
---|---|---|
committer | 2014-02-15 21:10:30 +0100 | |
commit | 7a80bfc20a4d08da340101f60624301c47f8b527 (patch) | |
tree | 3f1ce4b6c0320436df9587cbd5ac28e60061f8f4 /roverlay/recipe | |
parent | config/repo.list, rstan: fix src_uri (diff) | |
download | R_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.py | 14 |
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 ) |