Перейти к содержимому
RootPoligon

Как агент диагностирует сервер

Чтение ~8 мин

Хороший агент не угадывает. Он идёт по тому же пути, что и опытный админ: сначала выясняет, что сломалось, потом — почему, и только потом предлагает исправление. Ваша задача — следить, чтобы он не перепрыгивал через шаги.

Шаг 1. Что видит пользователь

Начинаем с симптома, а не с догадок. Если жалоба «сайт не открывается», первым делом стоит проверить, что именно отвечает сервер:

curl -I http://localhost

Ответ 502 Bad Gateway и ответ Connection refused — это две разные поломки. В первом случае веб-сервер работает, но не может достучаться до приложения. Во втором — веб-сервер вообще не слушает порт.

Шаг 2. Статус сервиса

Дальше — состояние сервиса и его последние сообщения:

systemctl status nginx
journalctl -u nginx -n 20 --no-pager

systemctl status скажет, запущен ли сервис и с каким кодом он упал. journalctl покажет последние строки лога — там обычно и лежит настоящая причина.

Шаг 3. Проверка конфигурации

Если сервис не стартует, следующий шаг — проверить конфиг. У nginx для этого есть отдельная команда:

nginx -t

Она не меняет ничего на сервере и при ошибке называет файл и строку. Это идеальная команда для агента: только чтение, а ответ точный.

Шаг 4. Исправление — минимальное

Когда причина найдена, исправление должно быть минимальным: поменять одну строку, а не переписать весь конфиг. И после каждого изменения — снова проверка:

nginx -t && systemctl reload nginx

Признаки, что агент идёт не туда

  • Предлагает переустановить пакет, ещё не посмотрев логи.
  • Меняет несколько вещей сразу — потом не понять, что помогло.
  • Перезапускает сервис «на всякий случай», не найдя причину.
  • Объясняет вывод, которого не было в терминале.

В любом из этих случаев жмите «Отклонить» и попросите агента сначала показать, на чём основан его вывод.

Дальше — лаба: сайт не открывается, а вы с агентом ищете причину и чините так, чтобы сайт поднимался и после перезагрузки.

Прочитали и разобрались? Отметьте урок — прогресс сохранится в этом браузере.

Дальше — лаба

nginx не отвечает

Лабы проходятся на компьютере. Отправьте ссылку себе, чтобы открыть её там.