Skip to content

Commit 24a58af

Browse files
authored
Merge pull request #17 from jdi-testing/update_logging
use standard python logging facilities #5
2 parents d2e8c6c + d8da4b9 commit 24a58af

File tree

4 files changed

+36
-59
lines changed

4 files changed

+36
-59
lines changed

JDI/core/logger/jdi_logger.py

+9-34
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,18 @@
1+
import json
12
import logging
3+
import logging.config
24

3-
from JDI.core.logger.log_levels import LogLevels
5+
from JDI.core.settings.jdi_settings import PropertyPath
46

57

68
class JDILogger(object):
9+
JDI_LOGGING_CONFIG_FILE_PATH = PropertyPath().get_property_file(file_name_init="logging.json")
710

811
def __init__(self, name="JDI Logger"):
9-
self.logger = logging.getLogger(name)
10-
self.__basic_settings()
11-
12-
log_level = {LogLevels.INFO, LogLevels.FATAL, LogLevels.ERROR}
13-
14-
def info(self, log_msg):
15-
if LogLevels.INFO in self.log_level:
16-
self.logger.setLevel(LogLevels.INFO.value[0])
17-
self.logger.info(log_msg)
18-
19-
def debug(self, log_msg):
20-
if LogLevels.DEBUG in self.log_level:
21-
self.logger.setLevel(LogLevels.DEBUG.value[0])
22-
self.logger.debug(log_msg)
2312

24-
def fatal(self, log_msg):
25-
if LogLevels.FATAL in self.log_level:
26-
self.logger.setLevel(LogLevels.FATAL.value[0])
27-
self.logger.fatal(log_msg)
28-
29-
def warning(self, log_msg):
30-
if LogLevels.WARNING in self.log_level:
31-
self.logger.setLevel(LogLevels.WARNING.value[0])
32-
self.logger.warning(log_msg)
33-
34-
def error(self, log_msg):
35-
if LogLevels.ERROR in self.log_level:
36-
self.logger.setLevel(LogLevels.ERROR.value[0])
37-
self.logger.error(log_msg)
38-
39-
def __basic_settings(self):
40-
hdlr = logging.FileHandler('jdi.log')
41-
hdlr.setFormatter(logging.Formatter('%(asctime)s %(levelname)s %(message)s'))
42-
self.logger.addHandler(hdlr)
13+
with open(self.JDI_LOGGING_CONFIG_FILE_PATH, 'r') as fd:
14+
logging.config.dictConfig(json.load(fd))
15+
self.logger = logging.getLogger(name)
4316

17+
def __getattr__(self, name):
18+
return getattr(self.logger, name)

JDI/core/logger/log_levels.py

-23
This file was deleted.

JDI/core/settings/jdi_settings.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33

44

55
class PropertyPath:
6-
def get_property_file(self):
7-
file_name_init = "jdi.properties"
6+
def get_property_file(self, file_name_init="jdi.properties"):
87
file_name = file_name_init
98
i = 0
109
dir_to_search = os.getcwd()

logging.json

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"version": 1,
3+
"disable_existing_loggers": true,
4+
"formatters": {
5+
"simple": {
6+
"class": "logging.Formatter",
7+
"datefmt": "%I:%M:%S",
8+
"format": "%(asctime)s %(levelname)s %(message)s"
9+
}
10+
},
11+
"handlers": {
12+
"file_handler": {
13+
"level": "INFO",
14+
"class": "logging.handlers.WatchedFileHandler",
15+
"formatter": "simple",
16+
"filename": "jdi.log",
17+
"mode": "a",
18+
"encoding": "utf-8"
19+
}
20+
},
21+
"loggers": { },
22+
"root": {
23+
"handlers": ["file_handler"],
24+
"level": "DEBUG"
25+
}
26+
}

0 commit comments

Comments
 (0)