Java Logback与logstash Logback编码器不工作
我在使用logstash Logback编码器的Logback时遇到问题 My logback.xml:Java Logback与logstash Logback编码器不工作,java,servlets,logging,logback,logstash,Java,Servlets,Logging,Logback,Logstash,我在使用logstash Logback编码器的Logback时遇到问题 My logback.xml: <?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="stash" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.class
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="stash" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>info</level>
</filter>
<file>logs/development.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>logs/development.log.%d{yyyy-MM-dd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder class="net.logstash.logback.encoder.LogstashEncoder" />
</appender>
<root level="all">
<appender-ref ref="stash" />
</root>
</configuration>
但我不知道该在我的项目中添加到哪里,以便logStash能够识别它
如果我删除“logback.xml”文件,日志记录就会工作,所以日志记录实际上会发生,但是它并没有存储在文件中。很可能回写会善意地登录到
src/main/resources/logs/development.log
您应该尝试查看是否在项目中的其他地方创建了另一个development.log
文件(例如,在target中,或者如果您将项目运行到另一个环境(如服务器tomcat)中,请查找部署目录)
一旦确认哪个文件实际获得日志,就可以尝试配置logstash,必须将其作为单独的程序运行。因此,logstash的配置在项目中的任何地方都不会发生。或者,您也可以在单独的项目中运行它,但这有点奇怪。我个人总是直接从命令运行它线路
希望这有帮助
input {
file {
path => "logs/development.log"
codec => "json"
}
}