diff options
author | Joel Andres Granados <jgranado@redhat.com> | 2008-01-16 11:42:37 +0100 |
---|---|---|
committer | Joel Andres Granados <jgranado@redhat.com> | 2008-01-16 11:42:37 +0100 |
commit | 7c8b79f848a0eca3ab4c3467509791d46e7dd5af (patch) | |
tree | 2f6e4ea96bbe5d8ced53dee0fb75bc5c6a488109 | |
parent | cda9627f1a4e177b81bbf9bb55e78ab2918fc38e (diff) | |
download | firstaidkit-7c8b79f848a0eca3ab4c3467509791d46e7dd5af.tar.gz firstaidkit-7c8b79f848a0eca3ab4c3467509791d46e7dd5af.tar.xz firstaidkit-7c8b79f848a0eca3ab4c3467509791d46e7dd5af.zip |
Log the pluginsystem stuff ot a file.
Put the Logger in the __builtin__.
Use Config object to initialize the default values.
-rwxr-xr-x | firstaidkit | 5 | ||||
-rw-r--r-- | pyfirstaidkit/__init__.py | 20 | ||||
-rw-r--r-- | pyfirstaidkit/configuration.py | 51 | ||||
-rw-r--r-- | pyfirstaidkit/interpret.py | 2 | ||||
-rw-r--r-- | pyfirstaidkit/plugins.py | 2 |
5 files changed, 41 insertions, 39 deletions
diff --git a/firstaidkit b/firstaidkit index e917c45..90b25e5 100755 --- a/firstaidkit +++ b/firstaidkit @@ -22,6 +22,7 @@ from threading import Thread from pyfirstaidkit import Tasker from pyfirstaidkit import Config from pyfirstaidkit import reporting +from pyfirstaidkit import FAKLogger class Flags: print_config = False @@ -108,9 +109,11 @@ if __name__=="__main__": Config.lock() + # Now that the config is locked, initialize log for plugin system. + FAKLogger(Config) singlerun = Tasker(Config) - + outputThread = Output(singlerun.reporting()) outputThread.start() diff --git a/pyfirstaidkit/__init__.py b/pyfirstaidkit/__init__.py index 6a31164..a92e797 100644 --- a/pyfirstaidkit/__init__.py +++ b/pyfirstaidkit/__init__.py @@ -17,5 +17,23 @@ from interpret import Tasker from configuration import Config -from log import Logger +#from log import Logger +import logging +import __builtin__ +import sys + +class FAKLogger: + """Describes the logger that will be used only by the pluginsystem. + + When instanciated it will put the logger in builtins so it is reachable + from everywhere in the code. """ + def __init__(self, config): + Logger = logging.getLogger("firstaidkit") + Logger.setLevel(logging.DEBUG) + if config.log.method == "stdout": + Logger.addHandler(logging.StreamHandler(sys.stdout)) + else: + # if nothing else matches we just put it into the file. + Logger.addHandler(logging.FileHandler(config.log.filename)) + __builtin__.Logger = Logger diff --git a/pyfirstaidkit/configuration.py b/pyfirstaidkit/configuration.py index d439a5f..1f1194d 100644 --- a/pyfirstaidkit/configuration.py +++ b/pyfirstaidkit/configuration.py @@ -26,44 +26,25 @@ else: cfgfile = ["/etc/firstaidkit.conf", os.environ["HOME"]+"/.firstaidkit.conf"] +def createDefaultConfig(config): + """Create the default config with the object.""" + config.system.root = "/mnt/sysimage" + config.operation.mode = "auto" + config.operation.help = "False" + config.operation.gui = "console" + config.operation.verbose = "False" + config.operation.gui = "console" + config.log.method = "file" + config.log.filename = "/var/log/firstaidkit.log" -def createDefaultConfig(): # # Look for the place where the plugins lie. # - if os.path.exists("/usr/lib64"): - # Then the plugins must be there - libdir="lib64" - elif os.path.exists("/usr/lib"): - # Lets try this one - libdir="lib" - else: - # Something is wrong - raise - - # - # Put the default file together. - # - return """ -[system] -root = /mnt/sysimage - -[plugin] -path = /usr/%s/firstaidkit-plugins -disabled = - -[operation] -mode = auto -help = False -verbose = False -gui = console - -[log] -method = stdout -""" % (libdir,) - -defaultconfig = createDefaultConfig() - + if os.path.exists("/usr/lib64"): libdir="lib64" + elif os.path.exists("/usr/lib"): libdir="lib" + else: raise + config.plugin.path = "/usr/%s/firstaidkit-plugins" % libdir + config.plugin.disabled = "" class LockedError(Exception): pass @@ -118,7 +99,7 @@ class FAKConfig(ConfigParser.SafeConfigParser, FAKConfigMixIn): pass Config = FAKConfig() -Config.readfp(StringIO(defaultconfig), "<default>") +createDefaultConfig(Config) Config.read(cfgfile) diff --git a/pyfirstaidkit/interpret.py b/pyfirstaidkit/interpret.py index da5671a..888756c 100644 --- a/pyfirstaidkit/interpret.py +++ b/pyfirstaidkit/interpret.py @@ -15,7 +15,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -from log import Logger +#from log import Logger from plugins import PluginSystem from reporting import Reports, TASKER import logging diff --git a/pyfirstaidkit/plugins.py b/pyfirstaidkit/plugins.py index a82743f..5d4903a 100644 --- a/pyfirstaidkit/plugins.py +++ b/pyfirstaidkit/plugins.py @@ -21,7 +21,7 @@ from errors import * from copy import copy,deepcopy import FirstAidKit -from log import Logger +#from log import Logger import imp import os |