Logback не создает выходной файл журнала - PullRequest
2 голосов
/ 23 июня 2019

Я пытаюсь добавить Logback logging для моего приложения. Код не создает файл журнала.

Я добавил ядро ​​logback и классическое logback. Добавлен logback.xml в папке ресурсов. Убедитесь, что папка ресурса в пути сборки.

<configuration debug="true">
 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
     <encoder >
        <pattern>%relative [%thread] %-5level %logger{35} - %msg%n</pattern>
    </encoder>
 </appender>
 <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
     <file>/data/csrt/log_path/logFiles/logFile.log</file>
     <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
         <fileNamePattern>/data/csrt/log_path/logFiles/logFile.%d{yyyy-MM-dd-HH-mm}.log</fileNamePattern>
         <maxHistory>30</maxHistory>
         <totalSizeCap>1GB</totalSizeCap>
     </rollingPolicy>
    <encoder >
        <pattern>%relative [%thread] %-5level %logger{35} - %msg%n</pattern>
    </encoder>
 </appender>
 <root level="INFO">
     <appender-ref ref="STDOUT" />
     <appender-ref ref="FILE" />
 </root>
</configuration>

Java-код:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class MainVerticle extends AbstractVerticle {

    private static final Logger LOGGER = LoggerFactory.getLogger(MainVerticle.class);

Я ожидаю, что файл журнала будет создан при каждом запуске. Это не происходит

Ответы [ 2 ]

0 голосов
/ 23 июня 2019

Вы что-то регистрируете?Простое создание объекта Logger не приведет к выводу или созданию каких-либо файлов журнала.Вы действительно должны вызвать LOGGER.info/warn/error(), чтобы все записи происходили.

Если вы вызываете LOGGER.info/warn/error() в другом месте кода в вашем классе MainVerticle, и поэтому это не проблема, убедитесь, что ваша программаработает как пользователь с правами на запись в указанное вами местоположение журнала.Кроме того, я не думаю, что RollingFileAppender будет создавать каталоги, поэтому убедитесь, что каталог, в который вы хотите записать записываемый файл журнала, действительно существует.

Вы также создаете приемник журнала для входа в систему.консоль (спасибо за расширение вашего вопроса, чтобы показать нам ваш файл logback.xml).Вы видите вход в консоль?Если нет, то вы знаете, что проблема не имеет ничего общего с файловым вводом-выводом, ни с путем к файлу, ни с чем-то в этом роде, так как вы вообще не регистрируетесь.

0 голосов
/ 23 июня 2019

файл журнала создается лениво, попробуйте добавить актуальный оператор журнала, например:

LOGGER.info("test");
...