root / snf-common / synnefo / lib / commissioning / utils / debug.py @ f54beeea
History | View | Annotate | Download (1.2 kB)
1 |
#!/usr/bin/env python
|
---|---|
2 |
|
3 |
import logging |
4 |
from os import environ |
5 |
|
6 |
_logger = None
|
7 |
|
8 |
def init_logger_file(name, level='DEBUG'): |
9 |
logger = logging.getLogger(name) |
10 |
handler = logging.FileHandler(name + '.log')
|
11 |
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
|
12 |
handler.setFormatter(formatter) |
13 |
logger.addHandler(handler) |
14 |
level = getattr(logging, level, logging.DEBUG)
|
15 |
logger.setLevel(level) |
16 |
global _logger
|
17 |
_logger = logger |
18 |
return logger
|
19 |
|
20 |
def init_logger_stderr(name, level='DEBUG'): |
21 |
logger = logging.getLogger(name) |
22 |
from sys import stderr |
23 |
handler = logging.StreamHandler(stderr) |
24 |
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
|
25 |
handler.setFormatter(formatter) |
26 |
logger.addHandler(handler) |
27 |
level = getattr(logging, level, logging.DEBUG)
|
28 |
logger.setLevel(level) |
29 |
global _logger
|
30 |
_logger = logger |
31 |
return logger
|
32 |
|
33 |
def debug(fmt, *args): |
34 |
global _logger
|
35 |
if _logger is None: |
36 |
init_logger_stderr('logger', get_level())
|
37 |
_logger.debug(fmt % args) |
38 |
|
39 |
def get_level(default='INFO'): |
40 |
try:
|
41 |
return environ['DEBUG_LEVEL'] |
42 |
except:
|
43 |
return default
|