I do not agree @deanmarktaylor. Looking at the logs on meta they are full of exactly this:
HTTP_USER_AGENT: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36
HTTP_X_FORWARDED_FOR: 18.104.22.168, 10.0.0.202
Hundreds of these, just like this. Zero backtrace, zero context, just a bunch of crying wolf with no information whatsoever.
And crying wolf is extremely harmful. It devalues any real substantive errors you might find in logs when they are cluttered with hundreds of useless noise entries, submitted by browser clients for who knows why.
I do not find it particularly illuminating to have a new “error” log entry every time a browser client HTTP ajax request fails… do you?
Putting discussion about error suppression vs. error handling aside @DeanMarkTaylor are you saying you think it’s Discourse being in Read Only mode that is causing the AJAX FAILs and not a browser glitch?