X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=nodemanager.py;h=e998a0488a02263e15c19922315f4cb94a79380f;hb=d88a6b97acdd56a303918cac7ed16ffad269d648;hp=8b2c6f63e1b606c2565f9b0568784ba1a466ca78;hpb=742de8445b04b2858cb7bd6a4c9e91edfde3b6af;p=nodemanager.git diff --git a/nodemanager.py b/nodemanager.py index 8b2c6f6..e998a04 100755 --- a/nodemanager.py +++ b/nodemanager.py @@ -15,16 +15,16 @@ import xmlrpclib import socket import os import sys -import resource import glob import pickle +import random +import resource import logger import tools from config import Config from plcapi import PLCAPI -import random class NodeManager: @@ -199,7 +199,16 @@ If this is not the case, please remove the pid file %s. -- exiting""" % (other_p m.start() self.loaded_modules.append(m) except ImportError, err: - print "Warning while loading module %s:" % module, err + logger.log_exc ("ERROR while loading module %s - skipping:" % module) + # if we fail to load any of these, it's really no need to go on any further + if module in NodeManager.core_modules: + logger.log("FATAL : failed to load core module %s"%module) + except AttributeError, err: + # triggered when module doesn't have a 'start' method + logger.log_exc ("ERROR while starting module %s - skipping:" % module) + # if we fail to load any of these, it's really no need to go on any further + if module in NodeManager.core_modules: + logger.log("FATAL : failed to start core module %s"%module) # sort on priority (lower first) def sort_module_priority (m1,m2):