import logging
import os
import time
from logging. handlers import RotatingFileHandlerclass Logger ( ) : logs_dir = os. path. dirname( os. path. dirname( os. path. abspath( __file__) ) ) + '\\report\\logs' def __init__ ( self, name) : self. logger = logging. getLogger( name) self. logger. setLevel( logging. INFO) formatter = logging. Formatter( '%(asctime)s - %(name)s - %(levelname)s - %(message)s' ) timestamp = time. strftime( '%Y%m%d%H%M%S' ) rotating_handler = RotatingFileHandler( filename= os. path. join( os. path. dirname( os. path. dirname( os. path. abspath( __file__) ) ) + '\\report\\logs' , "{}.log" . format ( timestamp) ) , maxBytes= 100 * 1024 * 1024 , encoding= 'utf-8' ) rotating_handler. setFormatter( formatter) ch = logging. StreamHandler( ) ch. setLevel( logging. INFO) ch. setFormatter( formatter) self. logger. addHandler( rotating_handler) self. logger. addHandler( ch) def debug ( self, msg) : self. logger. debug( msg) def info ( self, msg) : self. logger. info( msg) def warning ( self, msg) : self. logger. warning( msg) def error ( self, msg) : self. logger. error( msg) def critical ( self, msg) : self. logger. critical( msg)
if __name__ == '__main__' : logger = Logger( 'login' ) logger. info( 'This is info message' ) logger. debug( 'This idebug message' ) logger. warning( 'This i warning message' ) logger. error( 'This is error message' ) logger. critical( 'This is critical message' )