in apisix/runner/plugin/core.py [0:0]
def execute(configs: dict, r, req: HttpRequest, reps: HttpResponse):
for name, conf in configs.items():
try:
p = PLUGINS.get(name)()
conf = p.config(conf)
p.filter(conf, req, reps)
except AttributeError as e:
r.log.error("execute plugin `%s` AttributeError, %s" % (name, e.args.__str__()))
return False
except TypeError as e:
r.log.error("execute plugin `%s` TypeError, %s" % (name, e.args.__str__()))
return False
except BaseException as e:
r.log.error("execute plugin `%s` AnyError, %s" % (name, e.args.__str__()))
return False
else:
if reps.changed():
break
return True