【问题标题】:How to add an encoder for socket appender如何为套接字附加器添加编码器
【发布时间】:2017-06-15 18:03:58
【问题描述】:

我正在使用 Logback socket appender,一切正常,我可以从 socket 获取日志。

我的场景是:我们有一个分布式应用程序,所有日志都将通过 SocketAppender 保存到日志服务器的日志文件中。我只是使用 Logback 中提供的 SimpleSocketServer 从所有应用程序中获取日志。并且可以获取和保存日志。

但是,唯一的问题是,对于 socket appender,不能添加编码器,并且日志消息可能会被格式化为某种默认格式。但我必须以某种格式保存它们。

我能找到的一种方法是写一个像SimpleSocketServer这样的日志服务器,日志服务器会得到序列化的对象(ILoggingEvent),并自己格式化对象。

但是这样的话,我需要写太多的代码。我认为应该有一种方便的方法来添加编码器。

【问题讨论】:

    标签: logback


    【解决方案1】:

    我认为您不必担心序列化版本。您将在各个客户端上给SocketAppender String 消息。

    那么,只要你 configureSimpleSocketServer 在其配置中使用你想要的编码器,你所有的消息在磁盘上的格式都应该是正确的。

    【讨论】:

    • 谢谢,虽然已经很久了。我当时的最终解决方案,就像你说的,将日志作为字符串发送,并在服务器端解码字符串并按照我想要的格式构造。
    猜你喜欢
    • 1970-01-01
    • 2015-06-18
    • 2021-08-10
    • 2019-04-22
    • 2022-11-27
    • 2022-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多