|
@@ -110,10 +110,26 @@ def load_engine(engine_data):
|
|
|
if is_missing_required_attributes(engine):
|
|
|
return None
|
|
|
|
|
|
- engine.logger = logger.getChild(engine_name)
|
|
|
+ set_loggers(engine, engine_name)
|
|
|
+
|
|
|
return engine
|
|
|
|
|
|
|
|
|
+def set_loggers(engine, engine_name):
|
|
|
+ # set the logger for engine
|
|
|
+ engine.logger = logger.getChild(engine_name)
|
|
|
+ # the engine may have load some other engines
|
|
|
+ # may sure the logger is initialized
|
|
|
+ for module_name, module in sys.modules.items():
|
|
|
+ if (
|
|
|
+ module_name.startswith("searx.engines")
|
|
|
+ and module_name != "searx.engines.__init__"
|
|
|
+ and not hasattr(module, "logger")
|
|
|
+ ):
|
|
|
+ module_engine_name = module_name.split(".")[-1]
|
|
|
+ module.logger = logger.getChild(module_engine_name)
|
|
|
+
|
|
|
+
|
|
|
def update_engine_attributes(engine, engine_data):
|
|
|
# set engine attributes from engine_data
|
|
|
for param_name, param_value in engine_data.items():
|