root/gaphor/tags/gaphor-0.12.5/gaphor/misc/logger.py

Revision 1121, 1.4 kB (checked in by arjanmol, 2 years ago)

Merged changed from new-canvas branch to trunk

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1 """
2 Logger
3
4 Logger is a simple entry point for writing log messages.
5
6 It wraps the logging module and adds some basic configuration.
7 """
8
9 import logging
10
11
12 logging.basicConfig(level=logging.DEBUG,
13                     format='%(asctime)s %(levelname)s %(message)s')
14                     #format='%(asctime)s %(module)s:%(lineno)s %(levelname)s %(message)s')
15                     #filename='/tmp/myapp.log',
16                     #filemode='w')
17
18
19 class Logger(object):
20     DEBUG = logging.DEBUG
21     INFO = logging.INFO
22     WARNING = logging.WARNING
23     ERROR = logging.ERROR
24     CRITICAL = logging.CRITICAL
25
26     def __init__(self):
27         self.logger = logging.getLogger('')
28
29     def set_log_level(self, level):
30         self.logger.setLevel(level)
31        
32     def get_log_level(self, level):
33         return self.logger.getEffectiveLevel()
34
35     log_level = property(get_log_level, get_log_level, None, 'Log level')
36
37     def log(self, level, message, exc=None):
38         self.logger.log(level, message, exc_info=exc)
39
40     def debug(self, message, exc=None):
41         self.log(Logger.DEBUG, message, exc)
42
43     def info(self, message, exc=None):
44         self.log(Logger.INFO, message, exc)
45
46     def warning(self, message, exc=None):
47         self.log(Logger.WARNING, message, exc)
48
49     def error(self, message, exc=None):
50         self.log(Logger.ERROR, message, exc)
51
52     def critical(self, message, exc=None):
53         self.log(Logger.CRITICAL, message, exc)
54
55
56 # vim:sw=4
Note: See TracBrowser for help on using the browser.