Если вы системный администратор, вы, вероятно, знаете о важности файлов журналов, а также о том, как сложно их анализировать, особенно когда вы имеете дело с загруженным сервером. К счастью, есть определенные инструменты, которые облегчают вам жизнь, и один из них — Logwatch, инструмент командной строки для анализа журналов и создания отчетов в Linux.
В этой статье мы обсудим основы этого инструмента, а также предоставляемые им функции.
Примечание. Все примеры, обсуждаемые в этой статье, протестированы на Ubuntu 14.04 и GNU bash версии 4.3.11(1). Однако Logwatch доступен для большинства дистрибутивов Linux.
Установка
Команда Logwatch находится в репозитории большинства дистрибутивов Linux и может быть установлена с помощью следующей команды.
Дистрибутив Ubuntu или Debian:
sudo apt-get install logwatch
или
sudo yum install logwatch
для дистрибутива на базе Centos, Fedora или Redhat.
Вы также можете установить его из
Contents
Установка
официальная страница проекта .Просмотр журнала
Logwatch в основном предназначен для помощи в управлении системными журналами. Он имеет возможность просматривать ваши журналы за определенный период времени и составлять отчеты в тех областях, которые вы хотите, с необходимой вам детализацией. Вот несколько примеров, объясняющих его использование:
Получить информацию обо всем
По умолчанию инструмент Logwatch анализирует и составляет журналы, относящиеся к широкому спектру служб. Например, вот результат, когда команда была запущена без каких-либо параметров:
Как видите, выводимая информация имеет большой размер и недостаточно удобна для просмотра на экране терминала. Поэтому лучше всего перенаправить его в текстовый файл для удобств
Просмотр журнала
decoding="async" src="https://saintist.ru/wp-content/uploads/2024/05/logwatch-output.png" alt="logwatch-выход">Снимок экрана выше должен дать вам представление о типе отчета, который создает Logwatch. Заголовок, присутствующий вверху, дает вам краткое описание конфигурации команды по умолчанию. Например, поле «Начата обработка» содержит информацию о дате и времени выполнения команды, поле «Диапазон дат обработки» содержит информацию о периоде времени анализируемых журналов, поле «Уровень детализации вывода» содержит информацию на уров
Получить информацию обо всем
а поля содержат информацию о формате вывода и локальном хосте.После всей этой информации начинается собственно отчет, в котором логи разделены по сервисам. Например, первая служба здесь — статус dpkg, за ней следуют Kernel, pam_unix, Connections, sudo и т. д.
Ограничить вывод определенной службой
При желании вы можете ограничить вывод команды определенной службой. Этого можно добиться, используя опцию --service
. Вот пример:
Итак, вы можете видеть, что команда создала отчет только для службы pam_unix.
Укажите уровень детализации
Команда также позволяет указать уровень детализации отчета с помощью параметра --detail
. Аргумент этой опции может быть высоким, средним или низким, что соответствует целым числам 10, 5 и 0 соответственно.
Как видно из первого примера, обсуждаемого в этой статье, уровень детализации по умолчанию равен 0. Вот вывод команды по умолчанию для службы ядра:
а вот результат, когда уровень детализации был явно установлен на 10 или выше:
Итак, вы можете видеть, что по мере увеличения уровня детализации с 0 до 10 объем информации, предоставляемой командой, также увеличился.
Укажите диапазон дат
Вы также можете указать диапазон дат для обработки, что означает, что вы можете указать команде диапазон времени для обработки записей журнала. Этого можно добиться, используя опцию --range
. Общие диапазоны: «Вчера», «Сегодня» и «Все». Вот пример:
Отправить отчет на адрес электронной почты
Logwatch также может отправить отчет на определенный адрес электронной почты. Этого можно добиться, используя опцию --mailto
. Вот пример:
logwatch --service pam_unix --range allОграничить вывод определенной службой
n> myemail@gmail.com
Приведенная выше команда отправила отчет на адрес электронной почты. Вероятно, вам следует проверить папку «Спам» на наличие письма, поскольку Gmail пометил его как спам для моей учетной записи электронной почты.
Для получения дополнительной информации о Logwatch просмотрите Укажите уровень детализацииочная страница команды.
Заключение
Если вы ищете инструмент командной строки, который может сканировать файлы системного журнала и представлять информацию в удобочитаемой форме, попробуйте Logwatch. Его можно легко рассматривать как один из наиболее полезных инструментов командной строки для общего анализа и фильтрации файлов журналов.