-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlogger.py
More file actions
30 lines (24 loc) · 1.02 KB
/
logger.py
File metadata and controls
30 lines (24 loc) · 1.02 KB
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
import os
import logging
class Logger(object):
def __init__(self, name, LOGGING_DIR):
name = name.replace('.log', '')
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
if not os.path.exists(LOGGING_DIR):
os.makedirs(LOGGING_DIR, exist_ok=True)
file_name = os.path.join(LOGGING_DIR, '%s.log' % name)
handler = logging.FileHandler(file_name)
formatter = logging.Formatter('[%(asctime)s] %(levelname)s'
'p%(process)s {%(pathname)s:%(lineno)d} function %(funcName)s'
'%(levelname)s - %(message)s',
'%m-%d %H:%M:%S')
handler.setFormatter(formatter)
handler.setLevel(logging.DEBUG)
logger.addHandler(handler)
console_handler = logging.StreamHandler()
console_handler.setFormatter(formatter)
logger.addHandler(console_handler)
self._logger = logger
def get(self):
return self._logger