def reloadDBCache(self, args): # get DatabaseManager-instance databaseManager = Activator().getInstance('DatabaseManager') # database-load databaseManager.load() # get ModuleManager-instance moduleManager = Activator().getInstance('ModuleManager') # Signal the loaded modules to come and check if they need to update # themselves modmsg = '' for module in moduleManager.runningModules(): data = moduleManager.moduleCommand(module, 'reloadConfig') modmsg += '%s: %s\n' % (module, data) # return result return Result('Database-Config reloaded (%s)\n%s' % (str(databaseManager.getSettingsCount()), modmsg), None)
def status(self, args): # get Fluxcli-instance fluxcli = Activator().getInstance('Fluxcli') # get DatabaseManager-instance databaseManager = Activator().getInstance('DatabaseManager') # get ServerManager-instance serverManager = Activator().getInstance('ServerManager') # get ModuleManager-instance moduleManager = Activator().getInstance('ModuleManager') # get Dispatcher-instance dispatcher = Activator().getInstance('Dispatcher') # get server-list servers = serverManager.runningServers() # get module-list modules = moduleManager.runningModules() # data data = '' # status data += '----------------------------------------------------------------\n' data += ' Status\n' data += '----------------------------------------------------------------\n' # thread-count data += '%d Threads active\n' % activeCount() # server-count data += '%d Servers running\n' % len(servers) # module-count data += '%d Modules running\n' % len(modules) # dispatcher request-count data += '%d Dispatcher-Requests\n' % dispatcher.requestCount # fluxcli invocations data += '%d Fluxcli invocations\n' % fluxcli.invocationCount # database-settings data += '%d Database-Settings loaded\n' % databaseManager.getSettingsCount() # threads data += '\n----------------------------------------------------------------\n' data += ' Threads\n' data += '----------------------------------------------------------------\n' for thr in enumerate(): data += '%s (isDaemon: %s)\n' % (thr.getName(), str(thr.isDaemon())) # servers data += '\n----------------------------------------------------------------\n' data += ' Servers\n' data += '----------------------------------------------------------------\n' for server in servers: data += '\n[%s]\n' % server serverStatus = serverManager.serverStatus(server) if serverStatus is not None: for key, val in serverStatus.iteritems(): data += '%s: %s\n' % (key, val) # modules data += '\n----------------------------------------------------------------\n' data += ' Modules\n' data += '----------------------------------------------------------------\n' for module in modules: data += '\n[%s]\n' % module moduleStatus = moduleManager.moduleStatus(module) if moduleStatus is not None: for key, val in moduleStatus.iteritems(): data += '%s: %s\n' % (key, val) # config data += '\n----------------------------------------------------------------\n' data += ' Config\n' data += '----------------------------------------------------------------\n' data += Config().currentConfigAsIniString() # return result return Result(data, None)