]> TLD Linux GIT Repositories - tld-builder.git/blob - TLD_Builder/log.py
- python 3.x fixes
[tld-builder.git] / TLD_Builder / log.py
1 # vi: encoding=utf-8 ts=8 sts=4 sw=4 et
2
3 import os
4 import sys
5 import time
6 import syslog
7
8 import path
9
10 builder = ""
11 do_syslog = 0
12
13 # string containing last log entry,
14 # as the code is flawed to get this otherwise
15 _last_log = ""
16
17 def log(p, s):
18     global _last_log
19     _last_log = s
20
21     if do_syslog:
22         try:
23             syslog.syslog(p, str(s))
24         except TypeError:
25             syslog.syslog(p, repr(s))
26     f = open(path.log_file, "a")
27     f.write("%s [%s]: %s [%s]\n" % (time.asctime(), builder, s, os.path.basename(sys.argv[0])))
28     f.close()
29
30 def panic(s):
31     log(syslog.LOG_ALERT, "PANIC: %s" % s)
32     raise Exception("PANIC: %s" % str(s))
33
34 def alert(s):
35     log(syslog.LOG_ALERT, "alert: %s" % s)
36
37 def error(s):
38     log(syslog.LOG_ERR, "error: %s" % s)
39
40 def warn(s):
41     log(syslog.LOG_WARNING, "warning: %s" % s)
42
43 def notice(s):
44     log(syslog.LOG_NOTICE, "notice: %s" % s)
45
46 def open_syslog(name, f):
47     global do_syslog
48     do_syslog = 1
49     syslog.openlog(name, syslog.LOG_PID, f)
50
51 def last_log():
52     return _last_log