I just have some question: is there a reason that exceptions occuring on the rasa server are logged only when running rasa in the debug mode?
I assume nobody wants error messages, however I think that exceptions are not something that should be printed only as “debug” information. Here the warning type would (from my opinion) be better suited.
In addition, I think it could be beneficial to have some information about an exception within the tracker database (although I know this information does not fit well into the tracker store…)
the simplest way to get an exception is to implement a new Rasa component and add an error into the process part (here we have a component, that divides by zero when processing):
and use that component in the pipeline (config.yml) and train and test. Correctly, we get a errorneous http response. However, the error itself is not printed on the rasa server.
to “solve”/explain that issue I looked into the sourcecode. The reason for the strange behavior comes from using rasa 1.8. Here the error responses are not written to the standard output only in debug modus (rasa/server.py at 1.8.0 · RasaHQ/rasa · GitHub). Since Rasa 2.0.0 the exception itself is still logged in debug modus (which is somehow ok), but the error message is written as warning within the ErrorResponse class (rasa/server.py at 2.0.0 · RasaHQ/rasa · GitHub).