Чрезмерная запись логов в rsyslog после настройки модуля

Вопрос или проблема

После добавления следующих модулей в директорию /etc/rsyslog.d/ rsyslog продолжает быстро записывать логи на диск, что приводит к быстрому увеличению размеров файлов messages и command.log с объемными записями.

Вот обновленная конфигурация:

[root@rockey2 rsyslog.d]# cat /etc/rsyslog.d/cmd.conf
$ModLoad imfile
$InputFilePollInterval 1
$InputFileName /var/log/command
$InputFileTag secure-logs
$InputFileStateFile secure-state
$InputFileFacility local6
$InputRunFileMonitor
local6.* @@192.168.56.103

[root@rockey2 rsyslog.d]# cat /etc/rsyslog.d/message.conf
$ModLoad imfile
$InputFilePollInterval 1
$InputFileName /var/log/messages
$InputFileTag messages-logs
$InputFileStateFile messages-state
$InputFileFacility local6
$InputRunFileMonitor
local6.* @@192.168.56.103

Файл cmd.conf захватывает каждую команду, выполненную на системе Linux, как определено в PROMPT_COMMAND. Кроме того, в файле rsyslog.conf я добавил следующую конфигурацию:

local6.* /var/log/commands.log

Когда я удаляю файл message.conf, rsyslog продолжает вставлять обычные логи. Однако после добавления логов сообщений rsyslog генерирует чрезмерное количество логов.

Вот пример из файла command.log:

Dec 26 05:21:10 rockey2 messages-logs Dec 26 05:21:10 rockey2 messages-logs Dec 26 05:21:10 rockey2 messages-logs Dec 26 05:21:09 rockey2 messages-logs Dec 26 05:21:09 rockey2 messages-logs Dec 26 05:21:09 rockey2 messages-logs Dec 26 05:21:09 rockey2 messages-logs Dec 26 05:21:09 rockey2 messages-logs Dec 26 05:21:08 rockey2 messages-logs Dec 26 05:21:08 rockey2 messages-logs Dec 26 05:21:08 rockey2 messages-logs Dec 26 05:21:08 rockey2 messages-logs Dec 26 05:20:58 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:57 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:56 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:55 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:54 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:53 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:52 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:51 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:50 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:49 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:48 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:47 rockey2 messages-logs Dec 26 05:20:37 rockey2 messages-logs Dec 26 05:20:37 rockey2 messages-logs Dec 26 05:20:37 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:36 rockey2 messages-logs Dec 26 05:20:35 rockey2 messages-logs Dec 26 05:20:35 rockey2 messages-logs De

А вот пример из файла логов сообщений:

Dec 26 05:21:42 rockey2 messages-logs Dec 26 05:21:42 rockey2 messages-logs 
Dec 26 05:21:32 rockey2 messages-logs Dec 26 05:21:31 rockey2 messages-logs Dec 26 05:21:31 rockey2 messages-logs Dec 26 05:21:31 rockey2 messages-logs Dec 26 05:21:30 rockey2 messages-logs 
Dec 26 05:21:30 rockey2 messages-logs Dec 26 05:21:30 rockey2 messages-logs Dec 26 05:21:29 rockey2 messages-logs Dec 26 05:21:29 rockey2 messages-logs Dec 26 05:21:29 rockey2 messages-logs 
Dec 26 05:21:29 rockey2 messages-logs Dec 26 05:21:29 rockey2 messages-logs Dec 26 05:21:29 rockey2 messages-logs Dec 26 05:21:28 rockey2 messages-logs Dec 26 05:21:28 rockey2 messages-logs Dec 26 05:21:28 rockey2 messages-logs Dec 26 05:21:28 rockey2 messages-logs Dec 26 05:21:28 rockey2 messages-logs Dec 26 05:21:28 rockey2 messages-logs Dec 26 05:21:27 rockey2 messages-logs Dec 26 05:21:27 rockey2 messages-logs Dec 26 05:21:27 rockey2 messages-logs Dec 26 05:21:27 
rockey2 messages-logs Dec 26 05:21:27 rockey2 messages-logs Dec 26 05:21:26 rockey2 messages-logs Dec 26 05:21:26 rockey2 messages-logs Dec 26 05:21:26 rockey2 messages-logs Dec 26 05:21:26 rockey2 messages-logs 

Dec 26 05:21:26 rockey2 messages-logs Dec 26 05:21:26 rockey2 messages-logs Dec 26 05:21:25 rockey2 messages-logs Dec 26 05:21:25 rockey2 messages-logs Dec 26 05:21:25 rockey2 messages-logs Dec 26 05:21:25 rockey2 messages-logs Dec 26 05:21:25 rockey2 messages-logs Dec 26 05:21:25 rockey2 messages-logs Dec 26 05:21:25 rockey2 messages-logs Dec 26 05:21:24 rockey2 messages-logs Dec 26 05:21:24 rockey2 messages-logs Dec 26 05:21:24 rockey2 messages-logs Dec 26 05:21:24 rockey2 messages-logs Dec 26 05:21:24 rockey2 messages-logs Dec 26 05:21:23 rockey2 messages-logs 
Dec 26 05:21:23 rockey2 messages-logs Dec 26 05:21:23 rockey2 messages-logs Dec 26 05:21:22 rockey2 messages-logs Dec 26 05:21:22 rockey2 messages-logs
 Dec 26 05:21:22 rockey2 messages-logs

Кроме того, я запустил команду проверки конфигурации:

[root@rockey2 log]# rsyslogd -N1
rsyslogd: версия 8.2310.0-4.el9, проверка конфигурации (уровень 1), главная конфигурация /etc/rsyslog.conf
rsyslogd: модуль 'imfile' уже в этой конфигурации, не может быть добавлен [v8.2310.0-4.el9 попробуйте https://www.rsyslog.com/e/2221 ]

На стороне сервера как файлы messages, так и command.log быстро увеличиваются, несмотря на то, что у меня нет настроенных модулей в файле rsyslog.conf на стороне сервера:

# Сохерить сообщения загрузки также в boot.log
local7.* /var/log/boot.log
local6.* /var/log/commands.log

:syslogtag, isequal, "messages-logs:" /var/log/remote/%HOSTNAME%-messages.log
& stop

$template remote-incoming-logs, "/var/log/remote/%HOSTNAME%.log"
*.* ?remote-incoming-logs

Может кто-нибудь помочь мне решить эту проблему на машине с Linux?

Ответ или решение

Избыточная запись логов в rsyslog после настройки модулей

После добавления модулей в директорию /etc/rsyslog.d/, ваша система начала испытывать значительные проблемы с избыточной записью логов в файлы, такие как messages и command.log. Это явление может вызвать быстрое заполнение дискового пространства и затруднить работу системы. Ниже мы рассмотрим возможные причины происходящего и предложим решения для устранения данной проблемы.

Анализ конфигурации

Конфигурация модулей

Ваша конфигурация следит за файлами логов, и за каждую секунду ($InputFilePollInterval 1) проверяет файл на новые записи. Вот фрагменты конфигурации:

$ModLoad imfile
$InputFilePollInterval 1
$InputFileName /var/log/command
$InputFileTag secure-logs
$InputFileStateFile secure-state
$InputFileFacility local6
$InputRunFileMonitor

Хотя это позволяет быстро обрабатывать логи, слишком низкий интервал опроса может приводить к значительным задержкам и многократному повторному чтению уже обработанных записей, что в свою очередь и вызывает избыточность записей в логах.

Проблема с дублированием логов

Судя по приведенным вами примерам из логов, сообщения в них дублируются, что свидетельствует о том, что один и тот же лог может обрабатываться несколько раз. Для решения этой проблемы, вам следует:

  1. Увеличить интервал опроса с 1 секунды до более подходящего значения, например, 5 или 10 секунд.
  2. Убедиться, что файлы состояния ($InputFileStateFile) корректно сохраняются и обрабатываются.

Конфликт настроек

Ошибка, которая возникает при проверке конфигурации:

rsyslogd: module 'imfile' already in this config, cannot be added

указывает на то, что попытка повторной загрузки модуля imfile вызывает проблему. Это может привести к конфликтам в обработке логов.

Рекомендации по конфигурации
  1. Убедитесь, что модули загружаются только один раз. Проверьте, чтобы строка $ModLoad imfile была только в одном конфигурационном файле, например в cmd.conf или message.conf, но не в обоих.

  2. Убедитесь, что в конфигурационных файлах, которые отправляют логи на удалённый сервер (@@192.168.56.103), нет связи с дублирующими записями. Это можно сделать, добавив условие & stop для предотвращения дальнейшей обработки.

Тестирование конфигурации

После внесенных изменений всегда проверяйте конфигурацию с помощью команды:

rsyslogd -N1

Это позволит вам убедиться, что конфигурация корректна и не вызывает конфликтов.

Мониторинг и диагностика

Используйте инструменты мониторинга, такие как GoAccess или Logwatch, для анализа логов и выявления других возможных аномалий в работе системы. Это поможет вам определить, являются ли излишние записи результатом ошибок команд или пользователи системы дублируют команды по ошибке.

Заключение

Решение проблемы избыточной записи логов в rsyslog требует внимательной настройки конфигурации. Следуя нашим рекомендациям, вы сможете значительно уменьшить объем записываемых логов и оптимизировать использование ресурсов серверов. Если проблема сохраняется, рассмотрите возможность детального анализа логов и работы системы, что может помочь в выявлении коренной причины избыточности.

Оцените материал
Добавить комментарий

Капча загружается...