When API fails, Apache is overriding the error message with a generic one
Consider the following API call:
curl -s -k -H "X-API-Token: MY-TOKEN" "https://localhost/rudder/api/latest/changeRequests" <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>500 Server Error</title> </head><body> <h1>Server Error</h1> <p>The server encountered an internal error or misconfiguration and was unable to complete your request.</p> <p>Please contact the server administrator, webmaster@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.</p> <p>More information about this error may be available in the server error log.</p> <hr> <address>Apache/2.2.22 (Debian) Server at localhost Port 443</address> </body></html>
The error 500 answer doesn't tell me WHY it failed (in this case, changerequests are disabled). But it should not fail like that, and there are cases where it fails AND changerequests are enabled.
Logs are not helping:
/var/log/rudder/apache2/access.log 192.168.90.35 - - [06/Jul/2016:11:21:30 +0200] "GET /rudder/api/latest/changeRequests HTTP/1.1" 500 2144 "-" "curl/7.43.0"
and no other log are returning anything :(
Updated by Alexis MOUSSET almost 4 years ago
See http://stackoverflow.com/questions/7588229/apache-mod-proxy-proxyerroroverride-for-specific-url-patterns and https://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxyerroroverride. As this is a touchy change, we won't do this before the next minor release.