Подтвердить что ты не робот

Код состояния HTTP для базы данных не работает

У меня есть страница на моем веб-сайте, которая сообщает о работоспособности сайта и устанавливает код статуса HTTP 200, все в порядке. Эта страница используется внешней программой мониторинга, чтобы проверить, что сайт занят.

Когда эта страница попала, я делаю очень легкий вызов proc БД, чтобы узнать, вверх ли БД и все в порядке. Если это не удается, я хочу вернуть на монитор значащий код ошибки HTTP, чтобы он знал, что все не так.

Из того, что я могу решить, нет HTTP-статуса, в котором говорится, что "сторонний компонент, на который я полагаюсь, не работает", и что бы вы вернули в этом случае?

503 Сервис недоступен...?

4b9b3361

Ответ 1

Я подозреваю, что 500 или 503 будут уместны. 503 обычно используется для перегруженных или поддерживаемых условий, но я не думаю, что было бы необоснованным использовать его для вашей ситуации.

Ответ 2

То, что такое 503.

503 означает, что сервер полагался на подключение какой-либо другой службы, которая не отвечала вовремя.

Ошибка сервера 5xx

Проверено в Википедии, и список там, кажется, подразумевает, что 504 будет тот, о котором я думаю. Возможно, ссылка устарела.

Итак:

504 Тайм-аут шлюза

Сервер действовал как шлюз или прокси и не получили своевременную запрос от нисходящего сервера.

Ответ 3

Похоже, вы должны основывать свой мониторинг больше, чем просто возврат статуса. Вы пытаетесь передать более сложную информацию, чем коды состояния HTTP, предназначенные для связи.

Или просто выберите код, даже сделайте его, и настройте свой мониторинг, чтобы рассматривать его как "db down".