Nginx логирование, уровни логирования

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

Искать виртуальные хосты следует в /etc/nginx/sites-availible/

 

 

Nginx логирование — error_log

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

 

Существуют следующие уровни логирования Nginx:

  1. debug
  2. info
  3. warn
  4. error
  5. crit
  6. alert
  7. emerg

 

Так при указании в виртхосте уровня логирования warn записываться будут все предупреждения, ошибки, критические события, алерты и события чрезвычайные.

На практике это означает, что логи могут занимать значительное пространство на диске, поэтому предупреждения часто не записывают, устанавливая уровень error.

 

В виртхосте задается путь к файлу, в который веб-сервер будет писать лог.

 

При задании опций логирования для всего сервера в nginx.conf можно указать путь к логу в любой из секций http, server, stream и location.

Уровень логирования для выявления причин неверной работы сервера можно снизить ниже warn — самый низкий уровень — debug.

 

error_log logs/error.log debug;

Включать логирование всех событий имеет смысл только на короткий период, если уровень логирования не изменить на warn или error в скором времени дисковое пространство, доступное серверу начнет стремительно заканчиваться.

 

Чтобы использование debug было возможным веб-сервер должен быть изначально (до компиляции) сконфигурирован для его использования.

./configure —with-debug …

 

 

access_log Nginx

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

Именно эти логи анализируют некоторые счетчики посетителей сайтов. В нагруженных системах ведение access.log часто  отключают для экономии дискового пространства и снижения количества операций записи, выполняемых системой.

 

access.log следует анализировать для отслеживания источников трафика на сайте, лог доступа позволяет выявить резкое возрастание количества запросов, что в некоторых случаях может говорить о повышенной активности поисковых ботов на сайте (которую можно ограничить), или DDOS атаке.

Также информация о работе веб-сервера пишется в syslog. Она может быть полезна при анализе причин неисправностей.

 

Если Nginx не запускается причину почти всегда позволяет выявить проверка конфигурационных файлов

nginx -t

 

Читайте также материал, в котором разобрано как проверить конфигурацию Nginx и перезапустить службу.