#!/usr/bin/env python

#######################################################################

import socket
import pwd
import os
from logging.handlers import TimedRotatingFileHandler

#######################################################################

class TimedRotatingFileLoggingHandler(TimedRotatingFileHandler):
    """ Class that enables logging into files. """
    def __init__(self, filename, when='D', interval=1, backupCount=0, encoding=None):
        TimedRotatingFileHandler.__init__(self, filename, when, interval, backupCount, encoding)
        self._user = pwd.getpwuid(os.getuid())[0]
        self._host = socket.gethostname()

    def emit(self, record):
        record.__dict__['user'] = self._user
        record.__dict__['host'] = self._host
        return TimedRotatingFileHandler.emit(self, record)
                                                                                
#######################################################################
# Testing.

if __name__ == '__main__':
    pass