Как перенаправить определённые журналы в каталоге с помощью rsyslog?

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

Как перенаправить определённые журналы в каталоге с помощью rsyslog?

Пытаюсь перенаправить следующие логи из /home/ddlog/ms/logs/execution_logs/_abc-xyz-ms_* в VMware vRealize Log Insight, используя rsyslog. По какой-то причине это, похоже, не работает.

Я пробовал использовать imfile –

# Теперь загрузите внешний лог
$InputFileName /home/ddlog/ms/logs/execution_logs/_abc-xyz-ms_*
$InputFileTag ddlog
$InputFileStateFile ms
$InputFileSeverity debug
$InputFileFacility local7
$InputRunFileMonitor
local7.*  @@hostname:514

Закомментировав imfile и обновив rsyslog.conf на

*.* @@remote-host:514

похоже, работает прекрасно, но меня больше беспокоит перенаправление конкретных логов.

Трудно сказать без соответствующего содержимого syslog. Но, на мой взгляд, это могут быть проблемы с разрешениями файла, так как rsyslog снижает разрешения до syslog, и вы пытаетесь отслеживать путь /home/ddlog/...

Если это так, то есть несколько способов обойти это, например, добавив пользователя syslog в группу пользователя ddlog.

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

Чтобы перенаправить конкретные логи из директории с использованием rsyslog, убедитесь, что вы правильно сконфигурировали ваш rsyslog.conf и начали использовать модуль imfile для сбора логов. Приведенные ниже шаги могут помочь вам правильно настроить систему для передачи логов из /home/ddlog/ms/logs/execution_logs/_abc-xyz-ms_* в VMware vRealize Log Insight.

  1. Убедитесь, что модуль imfile загружен. В начале вашего rsyslog.conf добавьте следующее, если это еще не сделано:

    modules(load="imfile")
  2. Настройте параметры сбора логов. Добавьте следующие строки в конфигурацию:

    # Загрузка файлового ввода
    $InputFileName /home/ddlog/ms/logs/execution_logs/_abc-xyz-ms_*
    $InputFileTag ddlog
    $InputFileStateFile ms
    $InputFileSeverity debug
    $InputFileFacility local7
    $InputRunFileMonitor

    Данные настройки помогут rsyslog отслеживать файлы, начинающиеся с _abc-xyz-ms_.

  3. Настройте пересылку логов. После конфигурации imfile, вам нужно указать, куда отправлять эти логи. Добавьте следующую строку:

    local7.* @@hostname:514

    Убедитесь, что hostname заменен на адрес вашего VMware vRealize Log Insight.

  4. Проверьте разрешения на файлы. Если вы все еще видите, что логи не пересылаются, проблема может заключаться в разрешениях на файлы. У rsyslog может не быть доступа к директории /home/ddlog. В этом случае вы можете:

    • Добавить пользователя syslog в группу ddlog, чтобы предоставить доступ к нужным файлам:

      sudo usermod -aG ddlog syslog
    • Или изменить разрешения:

      sudo chown -R ddlog:ddlog /home/ddlog/ms/logs/execution_logs/
      sudo chmod -R 750 /home/ddlog/ms/logs/execution_logs/
  5. Перезапустите службу rsyslog. После внесения изменений не забудьте перезапустить rsyslog для применения новых настроек:

    sudo systemctl restart rsyslog
  6. Проверка логов. После перезапуска, проверьте наличие ошибок в системных логах:

    sudo tail -f /var/log/syslog

Или используйте файл, связанный с rsyslog, чтобы увидеть, есть ли ошибки при попытке чтения файлов или при их отправке.

Следуя этим шагам, вы должны успешно настроить пересылку конкретных логов из execution_logs в VMware vRealize Log Insight с помощью rsyslog. Если у вас по-прежнему возникают проблемы, возможно, стоит проверить более детально конфигурацию вашей системы или логи rsyslog на предмет ошибок.

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

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