Java 日志转发 syslog
syslog 服务器配置 配置 rsyslog 配置文件/etc/rsyslog.conf rsyslog 服务端接收 作为日志聚合服务,接受客户端发送过来的日志 开启 UDP/TCP 接收: # Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514 # Provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514 配置日志接收规则: $template RemoteLogs,"/data/logs/%fromhost-ip%/%$YEAR%-%$MONTH%-%$DAY%.log" :fromhost-ip, !isequal, "127.0.0.1" ?RemoteLogs #& ~ rsyslog 客户端发送 rsyslog 也可以作为客户端向远程的 rsyslog 服务端转发日志 开启转发: # UDP转发 *.* @server_ip:514 # TCP转发 *.* @@server_ip:514 重启 rsyslog 服务 当 rsyslog 服务端或客户端配置完成后,重启服务使配置生效 systemctl restart rsyslog systemctl status rsyslog 配置支持 TLS 的 rsyslog 安装依赖包 配置支持 TLS 的 rsyslog 需要安装以下依赖包 yum install rsyslog-gnutls yum install rsyslog yum install gnutls-utils yum install gnutls 生成密钥与证书 # 生成根证书 certtool --generate-privkey --outfile ca-key.pem certtool --generate-self-signed --load-privkey ca-key.pem --outfile ca.pem # 生成服务端密钥与证书 certtool --generate-privkey --outfile rslserver-key.pem --bits 2048 certtool --generate-request --load-privkey rslserver-key.pem --outfile request.pem certtool --generate-certificate --load-request request.pem --outfile rslserver-cert.pem --load-ca-certificate ca.pem --load-ca-privkey ca-key.pem # 生成客户端密钥与证书 certtool --generate-privkey --outfile rslclient-key.pem --bits 2048 certtool --generate-request --load-privkey rslclient-key.pem --outfile request.pem certtool --generate-certificate --load-request request.pem --outfile rslclient-cert.pem --load-ca-certificate ca.pem --load-ca-privkey ca-key.pem 注意:输入证书信息时名字不要留空,不然后面 Java 中会报java.security.cert.CertificateParsingException: X.509 Certificate is incomplete: subject field is empty的错误 ...