1、修改配置文件 /ect/rsyslog.conf

$ModLoad imjournal # provides access to the systemd journal
#$ModLoad imklog # reads kernel messages (the same are read from journald)
#$ModLoad immark  # provides --MARK-- message capability

# Provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514

# Provides TCP syslog reception
# 放开此处 tcp 配置
$ModLoad imtcp
$InputTCPServerRun 514

# 添加以下两行
$template RemoteLogs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?RemoteLogs

#### GLOBAL DIRECTIVES ####
......

2、允许 tcp 514 端口的访问

firewall-cmd --add-port=514/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports

3、启动rsyslog服务

systemctl restart rsyslog
systemctl status rsyslog

4、另一台机器作为 syslog 客户端,发送日志

logger --server 192.168.52.133 --port 514 --tcp --tag test -p local0.info "this is a test syslog msg."

5、rsyslog 服务器上验证日志文件内容

/var/log/192.168.52.133/test.log

2026-06-18T10:41:55+08:00 192.168.52.133 test: this is a test syslog msg.

注:

在 rsyslog 服务运行状态下,如果删除了某个日志文件,rsyslog 服务可能不会再次创建该日志文件,可以重启 rsyslog 服务解决。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐