ddns-pdns-updater/Logger.py

40 lines
1.1 KiB
Python
Raw Permalink Normal View History

2025-07-15 13:18:40 +02:00
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):
2025-07-15 14:25:10 +02:00
if loglevel == "DEBUG":
if self.debug:
self.print_console(severity, loglevel, msg)
else:
self.print_console(severity, loglevel, msg)
if self.syslog:
self.print_syslog(severity, loglevel, msg)
2025-07-15 13:18:40 +02:00
2025-07-15 14:25:10 +02:00
def print_console(self, severity, loglevel, msg):
print(f"{loglevel}, {datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")}, {msg}")
def print_syslog(self, severity, loglevel, msg):
syslog.syslog(severity, f"{loglevel}, {msg}")
2025-07-15 13:18:40 +02:00
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):
2025-07-15 14:25:10 +02:00
if self.debug:
2025-07-15 13:18:40 +02:00
self.log(syslog.LOG_DEBUG,"DEBUG",msg)