Spaces:
Sleeping
Sleeping
from datetime import datetime | |
import config | |
class Logger: | |
def __init__(self, logLevelName, logFile): | |
self.logLevels = {'DEBUG': 10, 'INFO': 20, 'ERROR': 30, 'CRITICAL': 40} | |
self.logLevel = self.logLevels[logLevelName] | |
self.logFile = logFile | |
def debug(self, message): | |
if self.logLevel >= self.logLevels['DEBUG']: | |
self.__log(f"{datetime.now().strftime('%Y-%m-%d %H:%M:%S')} DEBUG {message}") | |
def info(self, message): | |
if self.logLevel >= self.logLevels['INFO']: | |
self.__log(f"{datetime.now().strftime('%Y-%m-%d %H:%M:%S')} INFO {message}") | |
def error(self, message): | |
if self.logLevel >= self.logLevels['ERROR']: | |
self.__log(f"{datetime.now().strftime('%Y-%m-%d %H:%M:%S')} ERROR {message}") | |
def critical(self, message): | |
if self.logLevel >= self.logLevels['CRITICAL']: | |
self.__log(f"{datetime.now().strftime('%Y-%m-%d %H:%M:%S')} ** CRITICAL ** {message}") | |
def __log(self, message): | |
message = message.strip() | |
print(message) | |
if config.logFile: | |
with open(config.logFile,"a") as fh: | |
fh.write(message + "\n") | |