是否仍然可以使用log4j远程日志记录?

vuv7lop3  于 2022-11-06  发布在  其他
关注(0)|答案(1)|浏览(211)

我在网上找到了一些很老的例子,它们允许使用org.apache.logging.log4j.core.net.server.TcpSocketServer进行远程日志记录(请参阅https://github.com/piruin/log4j2-socket-server)。不幸的是,在更新的版本中,这个类似乎被删除或移动了。
现在我如何用log4j归档远程日志?有教程吗?

jdgnovmf

jdgnovmf1#

在客户端,Log4J为您提供了多个选项:

  • SocketAppender使用TCP或UDP发送消息。
  • HttpAppender使用HTTP POST消息发送消息。
  • SyslogAppender使用TCP或UDP以syslog格式发送消息。

在服务器端,您不会在Log4J库中找到任何内容,但有大量选项:

  • 对于“快速和脏”,您可以使用NetCat:
nc -l 1234 > foo.log
  • Syslog可在任何Linux系统上使用;你可以建立一个中央服务器,并将日志写入文件。就我个人而言,我觉得这比它的价值更麻烦。
  • 如果你想自己运行它,一个更好的解决方案是fluentd。这需要一些配置,但是给了你很大的灵活性和未来的扩展。
  • 也有很多第三方服务,如Loggly或DataDog,它们将接受您的日志消息,并为您提供一个搜索引擎界面来查看它们。

相关问题