Що таке логи сервера?
Стаття також доступна російською (перейти до перегляду).
Зміст:
- Як переглянути логи сервера для віртуального хостингу
- Як подивитися логи сервера на VPS або виділеному сервері
- DirectAdmin
- Hestia
Логи сервера — це записи, зроблені автоматично сервером або програмним забезпеченням, яке виконується на сервері, з метою відстеження подій.
Логи сервера можуть містити різноманітну інформацію, включаючи дату та час події, IP-адреси клієнтів, які зверталися до сервера, запити, що були виконані клієнтами, статус відповідей на ці запити, інформацію про помилки та неполадки, а також процеси, які виконуються зараз.
Логи сервера є важливим інструментом для відстеження та аналізу роботи. Вони можуть допомогти виявити проблеми, пов'язані з безпекою, продуктивністю, надійністю та ефективністю. Також логи можуть бути корисними для відповіді на запити клієнтів, дослідження поведінки користувачів та для вдосконалення функціональності сервера.
Файли журналів належать до категорій:
-
додатки;
-
події;
-
служби;
-
системні.
Більша частина лог-файлів розміщені у директорії /var/log:
-
/var/log/syslog або /var/log/messages — це загальний журнал системи, що містить дані від моменту першого включення. Інформація різноманітна: вона надходить від ядра системи, інтерфейсів мереж тощо.
-
/var/log/auth.log або /var/log/secure — дані про користувацькі авторизовані входи. Можна дізнатися про способи авторизації, різні спроби (включно зі невдалими).
-
/var/log/dmesg – дані про драйвери пристроїв. Ключ --level=, активує опцію фільтрування результатів. Коли обсяг інформації перевищує розмір файлу, найстаріші дані автоматично видаляються.
-
/var/log/cron — інформація від планувальника завдань crond про час виконання завдань за розкладом.
-
var/log/kern.log — меседжі від ядра, а також попередження. Їх можна застосовувати для роботи над помилками модулів, які інтегровані в ядро.
-
/var/log/maillog/ або /var/log/mail.log — дані поштового сервера, який працює на платформі.
Apache і Nginx є двома найбільш популярними веб серверами, тому їх логи найчастіше використовуються. Ці логи можуть бути використані для моніторингу та аналізу продуктивності сервера, виявлення проблем у роботі програми та захисту від атак.
Логи Apache зазвичай зберігаються у файлі error.log та access.log, за умовчанням розташованому в /var/log/apache2/ або /var/log/httpd/. Access.log запам’ятовує кожен запит, включаючи IP-адресу клієнта, код відповіді сервера та час відповіді. Error.log містить інформацію про помилки, що виникли під час обробки запитів.
Логи Nginx зберігаються за замовчуванням у файлах error.log та access.log, які знаходяться в /var/log/nginx/. Access.log має дані про кожен запит, а також деяку додаткову інформацію: розмір переданих даних і браузер, що використовується клієнтом. Error.log збирає дані про помилки.
Як переглянути логи сервера для віртуального хостингу
Web-сервери мають два типи логів: логи помилок та логи доступу до сайту. Зазвичай вони зберігаються у каталозі /var/log/ на сервері (включаючи Apache). На різних ОС логи Apache можуть мати різні імена. Наприклад:
-
на FreeBSD це файли httpd-error.log і httpd-access.log;
-
на GNU/Debian (Ubuntu) це підкаталог apache2 і файли error.log і access.log;
-
на CentOS це підкаталог httpd та файли access.log та error.log.
Доступ до логів може здійснюватись по-різному. Наприклад, на віртуальному хостингу FREEhost.UA логи можна переглядати в панелі управління, а також налаштувати щоденне автоматичне копіювання журналів сайту в кореневий каталог хостинг-акаунту.
HTTP логи так само можна використовувати для формування статистики відвідуваності та формування різних бізнес-метрик. Наприклад, можна отримати інформацію про час найбільшої активності користувачів, сторінки входу на сайт і виходу, дізнатися, яке програмне забезпечення та технічні засоби використовуються для перегляду сайту. У логах також є інформація про те, звідки користувач перейшов на сайт і його локація (країна і місто).
На нашому хостингу є сервіс AWStats для структурного перегляду логів. На основі лог-файлів вона генерує HTML-сторінки зі статистикою про роботу сайту та сервера.
Як подивитися логи сервера на VPS або виділеному сервері
DirectAdmin
Для перегляду логів сервера DirectAdmin необхідно виконати такі дії:
-
Увійдіть до панелі керування DirectAdmin, використовуючи облікові дані адміністратора.
-
Перейдіть до розділу «System Info & Files». Ви знайдете кілька підрозділів, пов'язаних із логами. Наприклад, ви можете вибрати «System Log» для перегляду системних логів або «Apache Error Log» для перегляду помилок, пов'язаних із веб сервером Apache.
-
Натисніть на вибраний підрозділ, щоб відкрити відповідний журнал.
-
Виберіть журнал та перегляньте його. Ви можете використовувати функцію пошуку, щоб знайти конкретну інформацію чи помилку.
Також можна використовувати SSH-клієнт, щоб переглянути логи сервера DirectAdmin. Для цього виконайте такі дії:
-
Відкрийте клієнт SSH і введіть облікові дані адміністратора сервера DirectAdmin.
-
Перейдіть до директорії, де знаходяться логи DirectAdmin. Зазвичай вони розташовані у /var/log/directadmin/.
-
Виберіть потрібний журнал та відкрийте його за допомогою команди less або tail. Наприклад, щоб переглянути системний журнал, виконайте команду less system.log або tail -f system.log, щоб відстежувати зміни журналу в режимі реального часу.
Hestia
Для перегляду логів сервера Hestia ви можете скористатися командою journalctl. Виконайте такі дії:
-
Відкрийте термінал та увійдіть на сервер Hestia за допомогою SSH.
-
Введіть наступну команду: sudo journalctl -u hestia
Якщо ви хочете переглянути логи за певний період часу, ви можете використовувати опції -S та -E для вказівки початкової та кінцевої дати відповідно. Наприклад:
sudo journalctl -u hestia -S "2022-01-01 00:00:00" -E "2022-01-02 00:00:00"
Ця команда покаже логи Hestia, які були створені між 1 січня 2022 року та 2 січня 2022 року.
Якщо ви бажаєте переглянути лише останні кілька рядків лога, використовуйте опцію -n. Наприклад:
sudo journalctl -u hestia -n 100
Ця команда покаже останніх 100 рядків лога Hestia.
Це лише деякі з можливостей команди journalctl. Ви можете знайти більше інформації про цю команду, використовуючи команду man journalctl у терміналі.
FREEhost.UA пропонує хостинг з MySQL від 54 грн. в місяць. Купуючи у нас хостинг на 12 місяців Ви отримуєте надійний, швидкий хостинг з цілодобовою технічною підтримкою та домен у подарунок!