Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将logback StatusManager数据写入日志文件?_Java_Logging_Logback_Logstash Logback Encoder - Fatal编程技术网

Java 如何将logback StatusManager数据写入日志文件?

Java 如何将logback StatusManager数据写入日志文件?,java,logging,logback,logstash-logback-encoder,Java,Logging,Logback,Logstash Logback Encoder,根据,我们可以使用StatusListener编写StatusManager数据。 主要有两个状态监听器用于编写状态管理器消息 OnConsoleStatusListener-在控制台上打印消息,即在System.out上 OneErrorConsoleStatusListener-在控制台上打印消息,即在System.error上 但是我需要将那些StatusManager消息写入错误日志。有什么方法可以做到这一点吗?由于logback不提供向文件发送状态消息的StatusListener实现

根据,我们可以使用
StatusListener
编写
StatusManager
数据。 主要有两个状态监听器用于编写状态管理器消息

  • OnConsoleStatusListener-在控制台上打印消息,即在System.out上
  • OneErrorConsoleStatusListener-在控制台上打印消息,即在System.error上

  • 但是我需要将那些
    StatusManager
    消息写入错误日志。有什么方法可以做到这一点吗?

    由于logback不提供向文件发送状态消息的
    StatusListener实现,因此您需要提供自己的
    ch.qos.logback.core.status.StatusListener实现。
    为简单起见,扩展
    ch.qos.logback.core.status.OnPrintStreamStatusListenerBase
    并重写其
    getPrintStream()
    方法,以向日志文件提供
    PrintStream

    然后配置logback以使用您的状态侦听器:

    
    
    或者,您也可以使用OnConsolsetStatusListener提供的logback,将程序输出重定向到一个文件