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