这是yapsy插件的运行方式
manager = ConfigurablePluginManager()
manager.setConfigParser(config, write_config)
manager.setPluginInfoExtension("info")
manager.setPluginPlaces(['plugins/'])
manager.collectPlugins()
try:
for plugininfo in manager.getAllPlugins():
manager.activatePluginByName(plugininfo.name, category_name='Default', save_state=True)
plugininfo.plugin_object.run(cons.MAIN_CONFIG, outputpath, finallogs, plugininfo.name, args.inventory)
print('\n')
except Exception as error:
print("Plugin Configuration Error", error)
说明
使用ConfigurablePluginManager实例,所有插件的运行方法都会得到 被称为装饰的装饰,以显示它所需的时间
要求: 有没有办法在yapsy中实现装饰器,这样我就不必单独在插件的每个运行函数上实现装饰器。