使用log4j套接字appender重新传输失败的消息

时间:2015-12-24 19:59:58

标签: log4j

我将带有log4j 2套接字appender的日志消息发送到日志服务器。如果远程服务器关闭,则消息会丢失。我想在建立连接时重新发送它们 我可以通过捕获套接字异常并将消息保存到临时队列来实现。可以只使用log4j配置吗?也许使用故障转移appender或其他一些?

编辑: 有任何想法吗?也许用async appender。它已经有一个队列。

1 个答案:

答案 0 :(得分:1)

这很难。因为它应该是某种可靠的协议。例如。套接字发送的事实并不意味着它被接收并写入磁盘/等。例如,请查看JMSAppender

对于简单的故障转移,您可以使用两个appender和两个远程服务器,只是不要同时重启它们。

然而,记录器不是你应该过分关注可靠性的东西。如果您有业务需求,则应使用适当的工具以不同方式实现它。