summaryrefslogtreecommitdiff
path: root/log.py
blob: 889c8041fa019f55608222d3da563293fb8b8b6d (plain)
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
# what is there to log?
LOG_NONE=0		# nothing
LOG_IMPORTANT=1	# important things like errors
LOG_NORMAL=2	# LOG_IMPORTANT + some events, like connect
LOG_EXTENDED=3	# LOG_NORMAL + more log information
LOG_DEBUG=4		# LOG_EXTENDED + debug information



def setLevel(newLevel=LOG_NORMAL):
	"""Set the current level to log."""
	global curLevel
	curLevel=newLevel
def setWriter(writer):
	"""Set the writer to use for logging. This method should have two params: item, level"""
	global curOutput
	curOutput=writer

def _writer(item, level):
	print "%s  %s"%(str(level), item)

curLevel=LOG_NORMAL
curOutput=_writer

def normal(item):
	log(item, LOG_NORMAL)
def important(item):
	log(item, LOG_IMPORTANT)
def extended(item):
	log(item, LOG_EXTENDED)
def debug(item):
	log(item, LOG_DEBUG)

def log(item, level=LOG_NORMAL):
	if level<=curLevel and item!="":
		curOutput(item, level)