我想将 CoreOS 日志聚合到 Papertrail 服务,该服务基本上为聚合日志记录提供了一个 syslog 端点。
常见建议这个设置似乎正在启动一个执行如下操作的服务:
journalctl -f | ncat --ssl <host>.papertrailapp.com <port>
但它并不理想,因为它不能很好地处理重启和远程端点停机,因为它没有类似rsyslogd
池的东西,所以我会得到重复的日志和/或删除日志。
鉴于 CoreOS 没有包管理,是否有常规方法可以轻松解决这个问题?
答案1
尝试创建这样的服务,启用它并启动
[Unit]
Description=Papertrail
After=systemd-journald.service
Requires=systemd-journald.service
[Service]
ExecStart=/bin/sh -c "journalctl -f | ncat --ssl logsN.papertrailapp.com XXXXX"
TimeoutStartSec=0
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target