-
-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathlog.py
More file actions
38 lines (29 loc) · 1.07 KB
/
log.py
File metadata and controls
38 lines (29 loc) · 1.07 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
31
32
33
34
35
36
37
38
import logging
import inspect
fh = logging.FileHandler('/tmp/acid-log-handler.log')
fh.setLevel(logging.DEBUG)
if fh.formatter is None:
formatter = logging.Formatter(
'%(asctime)s - [%(name)s :%(levelname)s] - %(message)s'
)
fh.setFormatter(formatter)
def _log(frame):
name = inspect.getmodule(frame[0]).__name__
logger = logging.getLogger(name)
logger.propagate = False
if not len(logger.handlers):
logger.addHandler(fh)
logger.setLevel(logging.DEBUG)
return logger
def log_debug(message, *args):
message = message.format(*args) if len(args) > 0 else message
_log(inspect.stack()[1]).debug(message)
def log_info(message, *args):
message = message.format(*args) if len(args) > 0 else message
_log(inspect.stack()[1]).info(message)
def log_warning(message, *args):
message = message.format(*args) if len(args) > 0 else message
_log(inspect.stack()[1]).warning(message)
def log_error(message, *args):
message = message.format(*args) if len(args) > 0 else message
_log(inspect.stack()[1]).error(message)