Logback不会将日志写入文件

时间:2018-09-03 16:08:55

标签: java rest tomcat logback

我有一个Java独立的REST应用程序,它位于Tomсat内部。我需要将日志输出到文件,我使用logback。但是日志未写入文件。尽管我删除了控制台附加程序,但它们仍显示在控制台中。如果您尝试在Windows计算机上运行,​​一切都会很好。尝试使用RedHat(没有GUI)时,日志不会输出到文件(尽管应该),也不会输出到控制台(尽管不应显示)。该应用程序可以正常运行,对查询做出响应。

Logback.xml:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <property name="DEV_HOME" value="/var/tmp" />
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${DEV_HOME}/mytest.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${DEV_HOME}/mytest-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <maxFileSize>2KB</maxFileSize>
            <maxHistory>4</maxHistory>
            <totalSizeCap>10KB</totalSizeCap>
        </rollingPolicy>
        <encoder class="net.logstash.logback.encoder.LogstashEncoder">
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <root level="INFO">
        <appender-ref ref="file" />
    </root>
</configuration>

在Eclipse中,我确实导出到Runnable jar文件,然后将其放在Linux机器上。我按如下方式运行:

java -jar test.jar & 

1 个答案:

答案 0 :(得分:0)

是的,我使用jboss EAP 7.0的情况相同,但是在Windows机器上一切正常,但是一旦我将其带到linux机器上。它不会写一个字。 [用于记录的application.properties]

第二秒钟我将log4j.properties移动到Jboss bin文件夹中。 application.properties文件和springboot应用程序资源中的相同文件。

enter image description here

重启服务器后,您会发现写在指定文件夹中的日志