SparkJava перенаправляет ведение журнала с помощью log4j в файл

Я создал простой проект Spark, включил log4j в качестве зависимости и добавил файл log4j.properties для записи журналов в файл в файловой системе. По какой-то причине это не работает, и когда я запускаю свое приложение, я вижу только журналы в консоли. Файл, который я определил для ведения журнала, создается, в нем есть даже несколько общих строк журнала, но нет строк журнала, которые я регистрирую из своего приложения.

Это раздел зависимостей в моем файле build.gradle:

dependencies {
    compile 'com.sparkjava:spark-core:2.3'
    compile group: 'org.springframework', name: 'spring-core', version: '4.3.5.RELEASE'
    compile group: 'org.springframework', name: 'spring-beans', version: '4.3.5.RELEASE'
    compile group: 'org.springframework', name: 'spring-context', version: '4.3.5.RELEASE'
    compile group: 'org.springframework', name: 'spring-expression', version: '4.3.5.RELEASE'
    compile group: 'org.mongodb', name: 'mongo-java-driver', version: '3.4.1'
    compile group: 'com.google.code.gson', name: 'gson', version: '1.7.2'
    compile group: 'com.google.guava', name: 'guava', version: '11.0.2'
    compile group: 'log4j', name: 'log4j', version: '1.2.17'
}

Это мой файл log4j.properties:

# Root logger option
log4j.rootLogger=INFO, stdout, file

# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

# Redirect log messages to a log file, support file rolling.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\log4j-application.log
log4j.appender.file.MaxFileSize=5MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

Я попытался изменить log4j.properties, чтобы он работал, но безуспешно. Я только создаю свой файл журнала и пару строк в нем, которые появились при запуске приложения. Журналов приложений нет, они отображаются только в консоли eclipse.

Что я делаю не так с этой настройкой?


person jovankricka    schedule 29.12.2016    source источник


Ответы (2)


Согласно документации требуется только зависимость slf4j. Вы пытались добавить зависимость slf4j-simple вместо log4j?

person Laercio Metzner    schedule 30.12.2016
comment
Кажется, что sparkjava уже предоставляет простую зависимость slf4j, поэтому никаких дополнительных зависимостей не требуется. Я только что удалил log4j из своего проекта и правильно настроил slf4j-simple. - person jovankricka; 04.01.2017

Мне просто нужна была простая запись в файл, и я добавил в свой проект зависимость log4j. В этом не было необходимости, так как sparkjava уже предоставляет slf4j-simple, который можно использовать для этой цели.

Я удалил зависимость log4j из моего build.gradle, добавил simplelogger.properties в свой путь к классам и настроил его для записи журналов в файл на диске.

person jovankricka    schedule 04.01.2017
comment
Вы можете поделиться своим файлом simplelogger.properties? - person andri_sasuke; 09.06.2017