logger module added
authorKonstantin Stepanov <kstep@p-nut.info>
Sun, 28 Nov 2010 12:47:27 +0000 (14:47 +0200)
committerKonstantin Stepanov <kstep@p-nut.info>
Sun, 28 Nov 2010 12:47:27 +0000 (14:47 +0200)
dbuscron/logger.py [new file with mode: 0644]

diff --git a/dbuscron/logger.py b/dbuscron/logger.py
new file mode 100644 (file)
index 0000000..4a69941
--- /dev/null
@@ -0,0 +1,46 @@
+
+import sys
+from datetime import datetime
+
+class Logger(object):
+
+    __level = 1
+    __out = None
+    __name = None
+
+    DEBUG = 4
+    INFO = 3
+    WARNING = 2
+    ERROR = 1
+    PANIC = 0
+
+    def __init__(self, name, out=sys.stderr):
+        self.__out = out
+        self.__name = name
+
+    def _get_level(self):
+        return self.__level
+    def _set_level(self, value):
+        self.__level = int(value)
+    level = property(_get_level, _set_level)
+
+    def log(self, level, message):
+        if level <= self.__level:
+            ts = datetime.now().strftime('%Y-%m-%d %H:%M')
+            self.__out.write('[%s] %s\n' % (ts, message))
+
+    def debug(self, message):
+        self.log(self.DEBUG, message)
+    
+    def info(self, message):
+        self.log(self.INFO, message)
+    
+    def warn(self, message):
+        self.log(self.WARNING, message)
+
+    def error(self, message):
+        self.log(self.ERROR, message)
+
+    def panic(self, message):
+        self.log(self.PANIC, message)
+