如何从客户端验证与服务器的 rsyslog TCP 通信?

How to verify rsyslog TCP communication with the server from the client side?

我想知道我正在登录的所有服务器是否都能正确接收我的 TCP 消息并进行回复。我不想在服务器端实现任何其他东西,只想监控客户端机器上的一切。

我希望能够使用它的协议和端口进行类似 ping 测试但对 rsyslog 环境有效的操作。

我也知道有一个 "debug" 文件,但我认为实际调试起来太复杂了。

impstats can give you counters on the amount of messages send, how many went OK, how many failed and so on. You can push this information to your monitoring tool of choice, here's how we do store impstats info in Elasticsearch: http://blog.sematext.com/2015/04/13/monitoring-rsyslogs-performance-with-impstats-and-elasticsearch/

另一个选项(您也可以将其与 impstats 一起使用)是使用 RELP 而不是普通的 TCP。这完全符合您对每条消息的要求:使用应用程序级确认来确保服务器收到消息。当然,这需要您在客户端上使用 imrelp on the server and omrelp