Logstash logback故障转移tcp追加器

Logstash logback故障转移tcp追加器,logstash,logback,logstash-logback-encoder,Logstash,Logback,Logstash Logback Encoder,我目前正在尝试使用将日志写入两个不同的logstash实例。这两个实例都将写入同一Elasticsearch实例 我正在努力找到一种方法来平衡两个logstash实例之间的负载 在阅读了logback文档和log4j2文档之后,很明显logback logstash使用的tcpapender不支持“负载平衡”URL(即url1、url2)。在log4j2中,我可以使用FailoverAppender来近似这种行为 logback中是否有类似的功能?或者我需要建立另一个服务来平衡负载以进行回登录

我目前正在尝试使用将日志写入两个不同的logstash实例。这两个实例都将写入同一Elasticsearch实例

我正在努力找到一种方法来平衡两个logstash实例之间的负载

在阅读了logback文档和log4j2文档之后,很明显logback logstash使用的tcpapender不支持“负载平衡”URL(即url1、url2)。在log4j2中,我可以使用FailoverAppender来近似这种行为


logback中是否有类似的功能?或者我需要建立另一个服务来平衡负载以进行回登录

AFAIK在
TcpAppenders
中不支持负载平衡。但是,您可以通过在日志存储框前面添加硬件/软件负载平衡器来实现负载平衡。如果日志存储进程/盒死亡,TCP连接将重置,下一个日志事件将导致重新建立连接

这种方法需要在设置中添加负载平衡器。您可以在
tcpapender
中使用负载平衡器的地址。平衡器为您处理日志存储的可用性

这取决于你想要实现什么。它是否没有丢失任何日志事件?然后,也许更好的方法是将日志写入文件,并由logstash forwarder将文件推送到您的日志存储箱中。如果您担心连接超时和应用程序速度减慢,那么您可以选择
async appender
或使用UDP


嗯,马克

很抱歉,回复耽搁了很长时间。这就是我们最终采用的解决方案(负载平衡器),因为它允许相当快地推出服务,而不需要太多基础设施配置方面的麻烦。我们想要实现的主要目标是日志系统的高可用性,而专用的负载平衡器选项允许这一点,而无需为日志库定制开发工作。