Как транслировать некоторые журналы через TCP из rsyslog в Docker?

Мне нужна очень простая вещь (для интеграционного теста более крупной системы, организованного docker-compose ): настроить Debian на основе Образ Docker с rsyslog внутри, поэтому при запуске rsyslog будет выдавать некоторые сообщения syslog поверх TCP ] на другую машину (контейнер). Как мне это сделать?

Я знаю Dockerfile , вопрос касается конфигурации rsyslog и как мне создать некоторые сообщения системного журнала? В идеале, если бы они могли быть предопределены (чтобы сопоставить их на другом конце интеграционного теста).

Я просто попытался добавить следующую строку:

*. * @@ remote-machine

в конце /etc/rsyslog.conf внутри моего образа Docker , но тогда, очевидно, я не получаю сообщения. Неправильная конфигурация? Здесь предполагается TCP-порт 514 ? Или просто нет сообщения syslog , когда я запускаю этот контейнер с помощью docker-compose ?

Мой Dockerfile выглядит так:

FROM debian:10.4

RUN apt-get update && apt-get -y upgrade
RUN apt-get -y install rsyslog

# ... modify /etc/rsyslog.conf :
#   - append the *.* @@remote-machine line (see above)
#   - disable imklog which is causing errors

ENTRYPOINT ["/etc/init.d/rsyslog"]
CMD ["start"]

Спасибо!

0
задан 15 June 2020 в 21:10
1 ответ

Вы можете использовать команду logger для создания произвольных сообщений системного журнала. Например:

logger --server 172.17.0.2 --priority local7.info --tag TEST Sample log message
3
ответ дан 15 June 2020 в 20:18

Теги

Похожие вопросы