logback 的默认输出目录

Default output directory for logback

我找不到我的日志文件在哪里。在 linux 上,该文件与其他 tomcat 的日志一样位于 tomcat /logs 目录中。上Windows不知道在哪

这是我配置的一部分 (logback.xml) :

<appender name="DEBUG_LOG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>DEBUG</level>
    </filter>
    <file>logs/audioguide-debug.log</file>
    <append>true</append>
    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <fileNamePattern>logs/audioguide-debug.log.%i.zip</fileNamePattern>
        <minIndex>1</minIndex>
        <maxIndex>20</maxIndex>
    </rollingPolicy>
    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <maxFileSize>20MB</maxFileSize>
    </triggeringPolicy>
    <encoder>
        <pattern>%d [%thread] %-5level %logger | %msg%n</pattern>
    </encoder>
</appender>

当我输入绝对地址时它可以工作,但我希望相同的文件在两个平台上工作:

<appender name="DEBUG_LOG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>DEBUG</level>
    </filter>
    <file>c:\programy\apache-tomcat-8.0.26\logs\audioguide-debug.log</file>
    <append>true</append>
    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <fileNamePattern>c:\programy\apache-tomcat-8.0.26\logs\audioguide-debug.log.%i.zip</fileNamePattern>
        <minIndex>1</minIndex>
        <maxIndex>20</maxIndex>
    </rollingPolicy>
    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <maxFileSize>20MB</maxFileSize>
    </triggeringPolicy>
    <encoder>
        <pattern>%d [%thread] %-5level %logger | %msg%n</pattern>
    </encoder>
</appender>

如果在 <file> 属性中给出了非绝对路径,它总是与运行 Logback 的进程的当前工作目录相关(在您的例子中,Tomcat)。

如果我没猜错,在 Windows 中,你是来自 IDE 的 运行 Tomcat。在 Eclipse 中,您可以通过 "Arguments" 选项卡上的 "Run configurations" 查看工作目录。在 Intellij 14 中,它位于 %USERPROFILE%\.IntelliJIdea14\system\tomcat\<configuration name>".

中的某处

通常的做法是使用${catalina.base}\logs作为日志路径。这样您就可以使日志路径明确且易于验证。

我找到了,位置是:...tomcat/bin/logs.

我从 ...tomcat/bin/startup

开始