如何使用具有logback日志记录输出的独立groovy脚本

时间:2017-12-13 08:35:44

标签: linux maven groovy logback slf4j

我编写了一个groovy脚本,它使用{{org.slf4j.Logger}}和 Logback 将输出提供给文件和控制台。在我的开发环境(项目,maven等)中运行此脚本时,它可以正常工作。

当我将脚本导出到我的linux机器并在那里执行时 - 没有任何反应。该脚本实际运行 - 但不输出到stout或文件。

然后我尝试在我的脚本中有一个{{println}}语句,并重试在linux机器上执行脚本。声明字符串被带到了粗壮的地方。

所以这里的问题是我的脚本不会在开发环境之外记录任何内容。

如何让我的脚本作为独立脚本使用日志记录?

logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <appender name="file" class="ch.qos.logback.core.FileAppender">
        <file>script.log</file>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <logger name="com.application" additivity="false" level="warn">
        <!--<appender-ref ref="file"/>-->
        <appender-ref ref="stdout"/>
    </logger>

    <logger name="hox" additivity="false" level="warn">
        <!--<appender-ref ref="file"/>-->
        <appender-ref ref="stdout"/>
    </logger>

    <!-- Debug logging: override via JVM-Option, eg. -->
    <!--   -Droot.log.level=DEBUG -->
    <root level="${root.log.level:-DEBUG}">
        <appender-ref ref="file"/>
        <appender-ref ref="stdout"/>
    </root>

</configuration>

0 个答案:

没有答案