import sys import datetime import syslog #from warnings import warn class Logger: pre:str timestamp:bool message:str syslog:bool debug:bool def __init__(self, syslog:bool=False, debug:bool=False): self.syslog=syslog self.debug=debug def log(self,severity, loglevel, msg): print(f"{loglevel}, {datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")}, {msg}") if not self.debug or self.syslog: syslog.syslog(severity, f"{loglevel}, {msg}") def info(self, msg): self.log(syslog.LOG_INFO,"INFO",msg) def warn(self, msg): self.log(syslog.LOG_WARNING,"WARNING",msg) def error(self, msg): self.log(syslog.LOG_ERR,"ERROR",msg) def _debug(self, msg): self.log(syslog.LOG_DEBUG,"DEBUG",msg)