Назад | Перейти на главную страницу

NGINX: прокси-прокси перехватывает ошибки 5xx - можно ли различить ошибки, запущенные поддерживаемыми, и те, которые были запущены самим nginx?

Мы используем proxy_intercept_errors ( http://wiki.nginx.org/HttpProxyModule#proxy_intercept_errors ) с нашими бэкэндами.

Мы перехватываем несколько статусных кодов, в том числе несколько 5хх.

Наш обработчик 5xx (каждый 500 имеет свой собственный) имеет access_log, поэтому мы можем видеть все ошибки 5xx, возвращаемые пользователю в красивом и чистом формате журнала.

Проблема в том, что в настоящее время мы не можем сказать, была ли 5xx возвращена пользователю nginx или перехвачена нашим сервером.

Есть ли способ провести различие между ними?

Спасибо.

500 - довольно серьезная ошибка для самого nginx, поэтому он всегда записывает об этом в журнал ошибок. И этого не произойдет, если ошибка вернулась из бэкэнда.