繁体   English   中英

使用Logstash-Logback-Encoder进行的Logback无法正常工作

[英]Logback with logstash-logback-encoder not working

我在使用logstash-logback-encoder进行Logback时遇到问题。

我的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.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>

我试图在项目主页中创建日志/开发:

在此处输入图片说明

由于某种原因,它不会写入日志文件。

我尝试添加:

input {
  file {
    path => "logs/development.log"
    codec => "json"
  }
}

但是我不知道将其添加到我的项目中,以便logStash能够识别它。

如果删除文件“ logback.xml”,则日志记录有效,因此日志记录实际上发生了,但未存储在文件中。

极不可能将logback记录到src/main/resources/logs/development.log您应该尝试查看是否在项目的其他位置(例如,在target中,或者您是否在创建另一个development.log文件)将项目运行到另一个环境(例如服务器tomcat)中,查找部署目录)

确认实际获取日志的文件后,您可以尝试配置logstash,必须将其作为单独的程序运行。 因此,logstash的配置不会在您的项目中发生。 或者也许您可以在一个单独的项目中运行它,但这有点奇怪。 我个人总是直接从命令行运行它。

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM