В этой статье мы подробно рассмотрим, как настраивать и просматривать журналы Nginx в Ubuntu 20.04 система мониторинга активности приложения.
Существует два типа журналов, в которых записанные события в Nginx: один - это журнал доступа, а другой - журнал ошибок. Если вы уже включили эти журналы в файле конфигурации ядра Nginx, вы можете найти оба типа журналов в / var / log / nginx во всех дистрибутивах Linux.
Журнал доступа Nginx
Все действия, связанные с посетителями сайта, фиксируются в журналах доступа. В этом типе журнала вы можете найти те файлы, к которым недавно осуществлялся доступ, как Nginx ответил на запрос клиента, IP-адреса клиента, какой браузер использует клиент и многое другое. Используя информацию журнала доступа, вы можете отслеживать трафик, чтобы узнать об использовании сайта с течением времени. Если вы правильно отслеживаете журналы доступа, вы можете легко найти некоторые необычные запросы, которые отправляет пользователь, чтобы проверить недостатки в развернутом приложении.
Включите журнал доступа Nginx
Журнал доступа можно включить с помощью директивы access_log либо в разделе сервера, либо в HTTP.
access_log log_file log_format;Первый аргумент, log_file, является обязательным, а второй аргумент - необязательным, log_format. Если вы не укажете формат журнала, журналы будут набираться в комбинированном формате по умолчанию.
Журнал доступа определяется по умолчанию в файле конфигурации Nginx. Таким образом, все журналы доступа к виртуальному хосту будут храниться в одном файле конфигурации.
http…
журнал_доступа / var / log / nginx / доступ.бревно;
…
Рекомендуется разделить журналы доступа всех виртуальных хостов, записав их в новый отдельный файл.
http…
…
журнал_доступа / var / log / nginx / доступ.бревно;
server
слушать 80;
Пример имя_сервера.ком
журнал_доступа / var / log / nginx / пример.доступ.бревно;
…
…
Перезагрузите новые конфигурации NGINX. Теперь вы можете посетить журналы доступа для примера.com в файле / var / log / nginx / example.доступ.log, используя следующую команду:
$ sudo tail -f / var / log / nginx / пример.доступ.бревноНастроить формат в журнале доступа
Давайте объясним пример для определения настраиваемого формата журнала доступа. По умолчанию журнал доступа записывается в комбинированном формате журнала. Следовательно, вы можете расширить предопределенный формат значением ответа gzip для степени сжатия.
httplog_format custom '$ remote_addr - $ remote_user [$ time_local]'
'"$ request" $ status $ body_bytes_sent'
'"$ http_referer" "$ http_user_agent" "$ gzip_ratio"';
server
gzip дальше;
…
журнал_доступа / var / log / nginx / пример.доступ.журнал кастомный;
…
После того, как вы внесли все изменения в конфигурацию Nginx, перезагрузите Nginx и затем запустите команду tail, чтобы отобразить коэффициент сжатия gzip в конце журнала событий.
$ sudo tail -f / var / log / nginx / пример.доступ.бревноЖурнал ошибок NGINX
Если NGINX внезапно перестает работать или работает некорректно, он будет записывать все события в журнал ошибок. Поэтому, используя журналы ошибок, вы можете найти более подробную информацию. Он также записывает предупреждения, но не может определить возникшую проблему.
Включить журнал ошибок
Следующий синтаксис директивы error_log:
error_log log_file log_level;В приведенном выше синтаксисе первый аргумент представляет путь к файлу журнала, а второй аргумент определяет уровень безопасности события журнала.
Мы упомянули пример ниже, в котором выполнение переопределения в директиве error_log в контексте сервера.
http…
…
error_log / var / log / nginx / error_log;
server
слушать 80;
имя_сервера example1.com;
журнал_ошибок / var / log / nginx / example1.error_log warn;
…
server
слушать 80;
имя_сервера example2.com;
журнал_ошибок / var / log / nginx / example2.error_log debug;
…
л
Если вам необходимо отключить журнал ошибок, присвойте имя файла журнала / dev / null.
error_log / dev / null;
Журнал ошибок уровня безопасности Nginx
В журнале ошибок вы можете использовать следующий уровень безопасности:
- возникать: Когда ваша система нестабильна, используется для экстренных сообщений
- тревога: Генерировать предупреждающие сообщения о серьезных проблемах.
- крит: Используется для критических проблем для немедленного решения.
- ошибка: При обработке страницы может возникнуть ошибка.
- предупреждать: Используется для предупреждающего сообщения
- уведомление: Обратите внимание на журнал, который вы также можете игнорировать.
- Информация: Для информации, сообщения
- отлаживать: Указывает место ошибки, используемое для отладочной информации.
Заключение
Журналы доступа и ошибок Nginx полезны для записи определенных действий. Мы узнали, как мы можем включать и просматривать эти типы журналов Nginx в нашей системе Linux. Это все о журналах Nginx.