glasswall.config.logging
1import logging 2import os 3from datetime import datetime 4 5import glasswall 6 7 8# 2021-03-22 17:34:59.428 glasswall.config.logging INFO __init__ Loaded Glasswall Editor version 2.0 from C:\Users\AngusRoberts\Documents\Azure\gated-check-in\gated_check_in\data\combined_libraries\gcin\glasswall_core2.dll 9fmt = "%(asctime)s.%(msecs)03d\t%(name)-29s\t%(levelname)-8s\t%(funcName)s\t\t%(message)s" 10 11# 2020-06-25 15:04:59 12datefmt = "%Y-%m-%d %H:%M:%S" 13 14log_formatter = logging.Formatter(fmt, datefmt) 15 16# %temp%/glasswall/logs/2020-06-25 150459.txt 17log_file_path = os.path.join(glasswall._TEMPDIR, "logs", f'{datetime.now().strftime("%Y-%m-%d %H%M%S")}.txt') 18 19# Ensure log directory exists 20os.makedirs(os.path.dirname(log_file_path), exist_ok=True) 21 22# Logging to file 23log = logging.getLogger(__name__) 24log_handler = logging.FileHandler(log_file_path, mode="w", delay=True, encoding="utf-8") 25log_handler.setFormatter(log_formatter) 26log.addHandler(log_handler) 27log_level = os.environ.get("glasswall_log_level", logging.DEBUG) 28log.setLevel(log_level) 29 30# Logging to console 31console = logging.StreamHandler() 32console.setFormatter(log_formatter) 33console_level = os.environ.get("glasswall_console_level", logging.INFO) 34console.setLevel(console_level) 35log.addHandler(console) 36 37 38def format_object(obj): 39 if not hasattr(obj, "__dict__"): 40 return "" 41 return "\n\t" + "\n\t".join(f"{k}: {v}" for k, v in obj.__dict__.items())
fmt =
'%(asctime)s.%(msecs)03d\t%(name)-29s\t%(levelname)-8s\t%(funcName)s\t\t%(message)s'
datefmt =
'%Y-%m-%d %H:%M:%S'
log_formatter =
<logging.Formatter object>
log_file_path =
'/home/vsts/work/_temp/glasswall/logs/2025-05-12 101415.txt'
log =
<Logger glasswall.config.logging (DEBUG)>
log_handler =
<FileHandler /home/vsts/work/_temp/glasswall/logs/2025-05-12 101415.txt (NOTSET)>
log_level =
10
console =
<StreamHandler (INFO)>
console_level =
20
def
format_object(obj):