-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathlogfile.py
44 lines (42 loc) · 2.12 KB
/
logfile.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import logging
from datetime import datetime
import os
import sys
class Logclass:
def getLogs(self):
directory = os.getcwd()
LOG_PATH = os.environ.get('LOG_PATH')
if LOG_PATH is None:
LOG_PATH = directory
if sys.platform == 'win32':
if not os.path.exists(rf"{LOG_PATH}\automation-report"):
os.makedirs(rf"{LOG_PATH}\automation-report")
if not os.path.exists(rf"{LOG_PATH}\automation-report\logs"):
os.makedirs(rf"{LOG_PATH}\automation-report\logs")
if not os.path.exists(rf"{LOG_PATH}\automation-report\logs\\" + datetime.now().strftime(
"%d-%m-%Y")):
os.mkdir(rf"{LOG_PATH}\automation-report\logs\\" + datetime.now().strftime(
"%d-%m-%Y"))
else:
if not os.path.exists(f"{LOG_PATH}/automation-report"):
os.mkdir(f"{LOG_PATH}/automation-report")
if not os.path.exists(f"{LOG_PATH}/automation-report/logs"):
os.mkdir(f"{LOG_PATH}/automation-report/logs")
if not os.path.exists(f"{LOG_PATH}/automation-report/logs/" + datetime.now().strftime(
"%d-%m-%Y")):
os.mkdir(f"{LOG_PATH}/automation-report/logs/"+datetime.now().strftime(
"%d-%m-%Y"))
logger = logging.getLogger()
filehandler = logging.FileHandler(
f"{LOG_PATH}/automation-report/logs/" + datetime.now().strftime("%d-%m-%Y/%d-%m-%Y %I.%M.%S %p") + ".log", mode="w")
formatter = logging.Formatter('%(asctime)s: %(levelname)s: %(module)s: %(funcName)s: %(message)s',
datefmt='%d/%m/%Y %I:%M:%S %p')
filehandler.setFormatter(formatter)
logger.addHandler(filehandler)
logger.setLevel(logging.ERROR)
# logger.debug("Debug message")
# logger.info("Information regarding the test case")
# logger.warning("Test case pass but with a Warning message")
# logger.error("Test case fail")
# logger.critical("Important test case fail on which other test case depends")
return logger