martiLQ/source/python/client/mlogging.py

76 lines
2.2 KiB
Python

import os
import datetime
class mLogging:
_LogOpen = False
_LogPath = None
_SoftwareName = "MARTILQREFERENCE"
def SetConfig(self, LogPath, SoftwareName):
self._LogPath = LogPath
self._SoftwareName = SoftwareName
def GetLogName(self):
today = datetime.datetime.today()
dateToday = today.strftime("%Y-%m-%d")
if None == self._LogPath or self._LogPath == "":
return None
if not os.path.exists(self._LogPath):
os.mkdir(self._LogPath)
logName = self._SoftwareName + "_" + dateToday + ".log"
return os.path.join(self._LogPath, logName)
def WriteLog(self, LogEntry):
sFullPath = self.GetLogName()
today = datetime.datetime.today()
dateToday = today.strftime("%Y-%m-%dT%H:%M:%S")
if None != sFullPath and sFullPath != "":
if not os.path.exists(sFullPath):
print("Log path: {}".format(sFullPath))
filec = open(sFullPath, "a")
else:
filec = open(sFullPath, "a")
filec.write(dateToday)
filec.write(".")
filec.write(LogEntry)
filec.write("\n")
filec.close()
def OpenLog(self):
if not self._LogOpen:
today = datetime.datetime.today()
dateToday = today.strftime("%Y-%m-%d")
self.WriteLog("***********************************************************************************")
self.WriteLog("* Start of processing: {}".format(dateToday))
self.WriteLog("***********************************************************************************")
self._LogOpen = True
def CloseLog(self):
if self._LogOpen:
today = datetime.datetime.today()
dateToday = today.strftime("%Y-%m-%d")
self.WriteLog("***********************************************************************************")
self.WriteLog("* End of processing: {}".format(dateToday))
self.WriteLog("***********************************************************************************")
self._LogOpen = False