Вход с помощью slf4j и logback, но без создания указанного файла журнала, который находится в конфигурации.(используя Maven, причал) - PullRequest
5 голосов
/ 16 марта 2011

Как указано в заголовке, я использую Maven и Jetty. Для входа используйте SLF4J и Logback. У меня есть 'logback.xml' в 'src / main / resources'.

    <configuration>
        <appender name="STDOUT"
                class="ch.qos.logback.core.ConsoleAppender">
            <layout class="ch.qos.logback.classic.PatternLayout">
                <pattern>%-4relative [%thread] %-5level %class - %msg%n</pattern>
            </layout>
        </appender>

        <appender name="FILE"
            class="ch.qos.logback.core.FileAppender">
            <layout class="ch.qos.logback.classic.PatternLayout">
                <pattern>%-4relative [%thread] %-5level %class - %msg%n</pattern>
            </layout>
            <File>myLog.log</File>
        </appender>

        <logger name="org.mortbay">
            <level value="debug" />
        </logger>

        <root>
            <level value="error" />
            <appender-ref ref="STDOUT" />
            <appender-ref ref="FILE" />
        </root>
</configuration>

Но моя проблема в том, что я не создаю файл myLog.log, если я запускаю / отлаживаю проект. Какое решение получить файл журнала.

Есть ли способ получить файл журнала только с SLF4J?

Ответы [ 2 ]

10 голосов
/ 18 марта 2011

Извини! Я неправильно понял использование «Logback». Я получил решение от http://www.mail-archive.com/user@slf4j.org/msg00661.html

т.е.

Похоже, вы неправильно поняли цель SLF4J. Если вы разместите slf4j-jdk14-1.5.6.jar, затем slf4j-api будет связываться с java.util.logging. Logback не будет использоваться. Только если ты поместите logback-core.jar и logback-classic.jar на вашем пути к классам (но не slf4j-jdk14-1.5.6.jar) будет Связывание API SLF4J с выходом из системы. SLF4J связывается с одним и только одним базовым протоколирование API (за запуск JVM).

НТН,

Благодаря Ceki Gulcu. Теперь я могу получить журналы в моем файле.

0 голосов
/ 25 мая 2013

Если вы используете JBoss 5.1 и у вас возникла та же проблема [вход в систему не записывается в файл], добавьте следующее в jboss-web.xml.

<class-loading>
    <loader-repository>
        com.hp:classloader=logback-slf4j
        <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
    </loader-repository>
</class-loading>

Это должно решить вашу проблему.

...