nginx access.log хранится только один день
Я использую goaccess на Ubuntu Server 12.04 для просмотра аналитики на моем веб-сервере. Я просто запускаю следующую утилиту:
goaccess -f /var/log/nginx/access.log
Однако я вижу только данные за один день. Мне было интересно, есть ли какие-то настройки по умолчанию в nginx для управления этим? Я немного читал о ротации лог-файлов, но сейчас это не проблема для меня. Похоже, что-то мешает access.log показывать больше суток.
Не могу найти что-нибудь в документации по nginx, чтобы поиграть с некоторыми настройками.
2 ответа
Вы также можете запустить его как:
zcat -f access.log* | goaccess
чтобы избежать создания нового файла.
Проблема заключалась в ротации файла журнала, как указал @german_guy. Чтобы получить все выходные данные, я скопировал все файлы access.log* в другой каталог, а затем распаковал их без сжатия, используя:
gunzip access.log*
cat access.log* > new.file
Который я тогда побежал с goaccess
goaccess -f ~/new.file
Теперь я получаю все аналитические данные.
Другой вариант, если вы используете Nginx, это использовать их бесплатный инструмент мониторинга Nginx Ampify. Он прост в настройке и позволяет настраивать его по метрике и периоду времени, а также имеет то преимущество, что вам не нужно сохранять команды, запускаемые вручную, поскольку они устанавливаются в браузере после установки.