opened image

Как просматривать журналы посещения сервера Centos 7

Журналы посещения сервера - это важнейший инструмент администратора для мониторинга активности на сервере. Система Centos 7 имеет встроенный инструмент журнала systemd для регистрации событий, которые происходят в системе. В этой статье мы рассмотрим, как просматривать журналы посещения сервера Centos 7 и как отфильтровать их по времени, IP-адресу и т.д.

 

Как просматривать и фильтровать журналы посещения сервера в Centos 7

 

Шаг 1: Открыть журнал

Первым шагом является открытие журнала, который содержит информацию о посещении сервера. В Centos 7 используется утилита journalctl для работы с журналом. Чтобы открыть журнал, необходимо запустить следующую команду:

journalctl

 

Эта команда откроет журнал и покажет последние записи. Чтобы просмотреть больше записей, можно использовать ключ -n, который указывает количество записей, которые нужно показать. Например, чтобы показать последние 100 записей, нужно использовать следующую команду:

journalctl -n 100

 

 

 

Шаг 2: Фильтрация журнала

Чтобы отфильтровать журнал по конкретному IP-адресу или временному интервалу, можно использовать различные ключи.

Фильтрация по IP-адресу:

Для фильтрации журнала по IP-адресу необходимо использовать ключ -a, который указывает IP-адрес, по которому нужно производить фильтрацию. Например, чтобы отфильтровать журнал по IP-адресу 192.168.1.100, нужно использовать следующую команду: 

journalctl -a _SYSTEMD_UNIT=httpd.service _COMM=httpd | grep '192.168.1.100'

 

Эта команда отфильтрует журнал по IP-адресу 192.168.1.100 и покажет только записи, содержащие этот IP-адрес.

Фильтрация по времени:

Для фильтрации журнала по временному интервалу можно использовать ключ -S, который указывает начальное время, и ключ -U, который указывает конечное время. Например, чтобы отфильтровать журнал за последние 24 часа, нужно использовать следующую команду:

journalctl --since "yesterday" --until "now"

Вы можете фильтровать журналы, начиная с определенного времени или в определенный промежуток времени, используя опции -S (с начала) и -U (до конца).

Например, чтобы просмотреть журналы с 10 утра 2 марта 2023 года, вы можете использовать команду:

journalctl -S "2023-03-02 10:00:00" 

Или чтобы просмотреть журналы в определенный промежуток времени, вы можете использовать команду:

 

journalctl -S "2023-03-02 10:00:00" -U "2023-03-02 12:00:00"

 

По уровню важности: Вы можете отфильтровать журналы по уровню важности (priority), используя опцию -p или --priority.

Например, чтобы отобразить все сообщения с уровнем важности "error" и выше, вы можете использовать команду:

journalctl -p err

 

По идентификатору процесса (PID): Вы можете фильтровать журналы по идентификатору процесса (PID), используя опцию _PID.

Например, чтобы отобразить все сообщения от процесса с PID 1234, вы можете использовать команду:

journalctl _PID=1234 

По пользователю или группе: Вы можете фильтровать журналы по идентификатору пользователя (UID) или группы (GID), используя опции _UID и _GID соответственно.

Например, чтобы отобразить все сообщения от пользователя с UID 1000, вы можете использовать команду:

 
journalctl _UID=1000

 

 

Шаг 3: Отображение журнала в реальном времени

Чтобы отслеживать журнал в реальном времени, можно использовать ключ -f, который отображает новые записи в журнале по мере их появления. Например, чтобы отслеживать журнал посещения сервера в реальном времени, нужно использовать следующую команду:

journalctl -f

Эта команда отображает новые записи в журнале по мере их появления и позволяет быстро реагировать на проблемы в системе.

 

Шаг 4: Экспорт журнала

Чтобы экспортировать журнал в файл, можно использовать ключ -o, который указывает формат экспорта и путь к файлу. Например, чтобы экспортировать журнал в формате CSV в файл /var/log/access_log.csv, нужно использовать следующую команду:

journalctl -o json | jq -r '[.PRIORITY, .MESSAGE, ._PID] | @csv' > /var/log/access_log.csv

Эта команда экспортирует журнал в формате CSV и записывает его в файл /var/log/access_log.csv.

 

 

Шаг 5: Удаление старых записей

Журналы посещения сервера могут занимать большой объем дискового пространства со временем. Чтобы очистить журнал и удалить старые записи, можно использовать ключ -vacuum-size, который удаляет записи, чтобы общий размер журнала не превышал указанный размер. Например, чтобы удалить записи в журнале, чтобы его размер не превышал 1 ГБ, нужно использовать следующую команду:

journalctl --vacuum-size=1G

Эта команда удалит старые записи в журнале, чтобы его размер не превышал 1 ГБ.

Заключение

В этой статье мы рассмотрели, как просматривать журналы посещения сервера Centos 7 и как отфильтровать их по времени, IP-адресу и другим параметрам. Мы также рассмотрели, как отображать журнал в реальном времени, экспортировать его в файл и удалять старые записи. Журналы посещения сервера являются важным инструментом для мониторинга активности на сервере, и знание методов их просмотра и фильтрации поможет администраторам быстро реагировать на проблемы в системе.

 

Также предлагаем рассмотреть другие полезные статьи: