Package Products :: Package DataCollector :: Module Plugins
[hide private]
[frames] | no frames]

Module Plugins

source code


Load modeling and monitoring plugins from standard locations and from
ZenPacks.  Most of the entry into this module is via the three functions
defined at the very bottom of the file. Those functions use the singleton
PluginManager objects to load the plugins.

Classes -
    PluginImportError - an exception type
    PluginLoader - jellyable object that has all the information neccessary
                   to dynamically import the plugin module and instantiate the
                   class that shares the module's name
    CoreImporter - jellyable object that is injected into a PluginLoader.
                   handles importing of plugins found inside Products
    PackImporter - same as above but for zenpack plugins
    BaseLoaderFactory - base class for the two loader factories
    CoreLoaderFactory - generates the PluginLoaders for core plugins
    PackLoaderFactory - generates the PluginLoaders for zenpack plugins
    PluginManager - there is one singleton instance of this class for modeling
                    plugins and another for monitoring plugins

Note that modPath uses a different convention for core versus zenpack plugins.

    core: zenoss.cmd.uname
    zenpack: ZenPacks.zenoss.AixMonitor.modeler.plugins.zenoss.cmd.uname

Classes [hide private]
PluginImportError
Capture extra data from plugin exceptions
PluginLoader
Class to load plugins
OsWalker
CoreImporter
PackImporter
BaseLoaderFactory
CoreLoaderFactory
PackLoaderFactory
PluginManager
Manages plugin modules.
ModelingManager
this class is not intended to be instantiated.
MonitoringManager
this class is not intended to be instantiated.
Functions [hide private]
 
_coreModPaths(walker, package)
generates modPath strings for the modules in a core directory
source code
 
_loadPlugins(pluginManager, dmd) source code
 
loadPlugins(dmd)
Get PluginLoaders for all the modeling plugins
source code
 
loadParserPlugins(dmd)
Get PluginLoaders for all the modeling plugins
source code
 
getParserLoader(dmd, modPath)
Get a PluginLoader for the given monitoring plugin's module path
source code
Variables [hide private]
  log = logging.getLogger('zen.Plugins')