-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlogger.py
More file actions
35 lines (29 loc) · 893 Bytes
/
logger.py
File metadata and controls
35 lines (29 loc) · 893 Bytes
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
"""
$URL: svn+ssh://svn.mems-exchange.org/repos/trunk/durus/logger.py $
$Id: logger.py 29018 2006-10-31 21:03:13Z rmasse $
"""
import sys
from logging import getLogger, StreamHandler, Formatter, INFO
logger = getLogger('durus')
log = logger.log
def direct_output(file):
logger.handlers[:] = []
handler = StreamHandler(file)
handler.setFormatter(Formatter("%(message)s"))
logger.addHandler(handler)
logger.propagate = False
logger.setLevel(INFO)
if file is sys.__stderr__:
return
if sys.stdout is sys.__stdout__:
sys.stdout = file
else:
log(100, "sys.stdout already customized.")
if sys.stderr is sys.__stderr__:
sys.stderr = file
else:
log(100, "sys.stderr already customized.")
if not logger.handlers:
direct_output(sys.stderr)
def is_logging(level):
return logger.getEffectiveLevel() <= level