From 65d6e01a32d681a55c87cba5d37d785b23bd980a Mon Sep 17 00:00:00 2001 From: Jonas <jonas@holm.tech> Date: Mon, 18 Mar 2019 17:12:56 +0100 Subject: [PATCH] Added: function for setup of file logging --- Script/cs/Tools/utils.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/Script/cs/Tools/utils.py b/Script/cs/Tools/utils.py index 6745e81..e068dd5 100644 --- a/Script/cs/Tools/utils.py +++ b/Script/cs/Tools/utils.py @@ -4,6 +4,7 @@ import zlib import ctypes import time import datetime +import os #### Set Log severity level ##### def set_log_level(level, logger): @@ -20,6 +21,29 @@ def set_log_level(level, logger): formatter = logging.Formatter('%(asctime)s %(levelname)-8s [%(filename)s:%(lineno)d] %(message)s') +def enableFileLogging(loggerName, fileName, filePath, logLevel): + """Enables file logging to a file with fileName at filePath. + It will make a logger with loggerName as identifier, at the specified loglevel, + + It will afterwards be retrievable with the use of logging.getLogger(loggerName), from any thread as long as it is in the same process. + + Filename should formatted like this: name + Log.out + + returns a reference to a properly configured logger""" + + ##### Setup FileHandler for Logger ##### + logFilePath = os.path.join(str(filePath),fileName) + fileHandler = logging.FileHandler(logFilePath,'w') + fileHandler.setFormatter(formatter) + + ##### Set LogLevel for filehandler ##### + set_log_level(logLevel, fileHandler) + logger = logging.getLogger(loggerName) + logger.addHandler(fileHandler) + + return logger + + def gettid(): #This is linux specific ... SYS_gettid = 186 -- GitLab