我需要一件非常简单的事情(用于由 协调的大型系统的集成测试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"]
谢谢!
答案1
你可以使用该logger
命令创建任意系统日志消息。例如:
logger --server 172.17.0.2 --priority local7.info --tag TEST Sample log message