[or-cvs] r16882: {projects} Add more logging refactoring from kaner and myself. (projects/gettor)

ioerror at seul.org ioerror at seul.org
Sat Sep 13 02:38:34 UTC 2008


Author: ioerror
Date: 2008-09-12 22:38:34 -0400 (Fri, 12 Sep 2008)
New Revision: 16882

Modified:
   projects/gettor/gettor_config.py
   projects/gettor/gettor_log.py
Log:
Add more logging refactoring from kaner and myself.


Modified: projects/gettor/gettor_config.py
===================================================================
--- projects/gettor/gettor_config.py	2008-09-13 01:43:10 UTC (rev 16881)
+++ projects/gettor/gettor_config.py	2008-09-13 02:38:34 UTC (rev 16882)
@@ -22,7 +22,7 @@
     srcEmail = "gettor at torproject.org"
     distDir = "/var/lib/gettor/pkg/"
     locale = "en"
-    logSubSystem = None
+    logSubSystem = "nothing"
     logFile = "/dev/null"
     configFile = "~/.gettorrc"
     config = ConfigParser.ConfigParser()
@@ -76,12 +76,12 @@
             self.config.set("global", "locale", self.locale)
 
         if self.config.has_option("global", "logSubSystem"):
-            self.lang = self.config.get("global", "logSubSystem")
+            self.logSubSystem = self.config.get("global", "logSubSystem")
         else:
             self.config.set("global", "logSubSystem", self.logSubSystem)
 
         if self.config.has_option("global", "logFile"):
-            self.lang = self.config.get("global", "logFile")
+            self.logFile = self.config.get("global", "logFile")
         else:
             self.config.set("global", "logFile", self.logFile)
 

Modified: projects/gettor/gettor_log.py
===================================================================
--- projects/gettor/gettor_log.py	2008-09-13 01:43:10 UTC (rev 16881)
+++ projects/gettor/gettor_log.py	2008-09-13 02:38:34 UTC (rev 16882)
@@ -6,17 +6,47 @@
 The user can choose one of those four options in a configuration file.
 '''
 
-import gettor_config
+import os
+import sys
+#import threading
+import ConfigParser
+import syslog
+from gettor_config import gettorConf
 
 class gettorLogger:
     '''
     A configurable logging system for gettor.
     '''
+    config  = gettorConf()
+    logger  = config.getLogSubSystem()
+    logfile = config.getLogFile()
+    logfd   = None
+    # We can't get real shm ipc with python currently :-(
+    #sem     = BoundedSemaphore(1)
 
     def _init_(self):  
+        print "gettor logger: ", logger
         # parse the configuration file so we know how we're running 
-        config = gettorConf()
+        if logger == "file":
+            try:
+                self.logfd = open(logfile, "w+")
+            except:
+                print "Could not open logfile", logfile
+                self.logfd = None
+            print "Logging to file"
     
     def log(self, message):
         # Log the message
+        if self.logger == "syslog":
+            syslog.syslog(message)
+        #elif self.logger == "file":
+            #sem.aquire()
+            #self.logfd.write(message)
+            #sem.release()
+        elif self.logger == "stdout":
+            print message
 
+
+if __name__ == "__main__" :
+    l = gettorLogger()
+    l.log("I'm a logger, logging!")



More information about the tor-commits mailing list