Limiting log size
authorEd Page <eopage@byu.net>
Sat, 26 Feb 2011 21:57:31 +0000 (15:57 -0600)
committerEd Page <eopage@byu.net>
Sat, 26 Feb 2011 21:58:16 +0000 (15:58 -0600)
src/gonvert.py
src/gonvert_qt.py

index f2db947..1ee52af 100755 (executable)
@@ -1,6 +1,5 @@
 #!/usr/bin/python
 
-import os
 import sys
 import logging
 
@@ -9,21 +8,8 @@ _moduleLogger = logging.getLogger(__name__)
 sys.path.append("/opt/gonvert/lib")
 
 
-import constants
 import gonvert_qt
 
 
-try:
-       os.makedirs(constants._data_path_)
-except OSError, e:
-       if e.errno != 17:
-               raise
-
-logging.basicConfig(level=logging.DEBUG, filename=constants._user_logpath_)
-_moduleLogger.info("gonvert %s-%s" % (constants.__version__, constants.__build__))
-_moduleLogger.info("OS: %s" % (os.uname()[0], ))
-_moduleLogger.info("Kernel: %s (%s) for %s" % os.uname()[2:])
-_moduleLogger.info("Hostname: %s" % os.uname()[1])
-
-
-gonvert_qt.run_gonvert()
+if __name__ == "__main__":
+       gonvert_qt.run_gonvert()
index ab1824c..481d9ea 100755 (executable)
@@ -10,6 +10,7 @@ import os
 import math
 import simplejson
 import logging
+import logging.handlers
 
 from PyQt4 import QtGui
 from PyQt4 import QtCore
@@ -1551,6 +1552,23 @@ class UnitWindow(object):
 
 
 def run_gonvert():
+       try:
+               os.makedirs(constants._data_path_)
+       except OSError, e:
+               if e.errno != 17:
+                       raise
+
+       logFormat = '(%(relativeCreated)5d) %(levelname)-5s %(threadName)s.%(name)s.%(funcName)s: %(message)s'
+       logging.basicConfig(level=logging.DEBUG, format=logFormat)
+       rotating = logging.handlers.RotatingFileHandler(constants._user_logpath_, maxBytes=512*1024, backupCount=1)
+       rotating.setFormatter(logging.Formatter(logFormat))
+       root = logging.getLogger()
+       root.addHandler(rotating)
+       _moduleLogger.info("%s %s-%s" % (constants.__app_name__, constants.__version__, constants.__build__))
+       _moduleLogger.info("OS: %s" % (os.uname()[0], ))
+       _moduleLogger.info("Kernel: %s (%s) for %s" % os.uname()[2:])
+       _moduleLogger.info("Hostname: %s" % os.uname()[1])
+
        app = QtGui.QApplication([])
        handle = Gonvert(app)
        if constants.PROFILE_STARTUP:
@@ -1561,12 +1579,5 @@ def run_gonvert():
 
 if __name__ == "__main__":
        import sys
-       logging.basicConfig(level = logging.DEBUG)
-       try:
-               os.makedirs(constants._data_path_)
-       except OSError, e:
-               if e.errno != 17:
-                       raise
-
        val = run_gonvert()
        sys.exit(val)