Надо выводить какие-то действия в консоль + логировать их в файл.
Я сделал это с помощью log4j. У меня для вывода в файл + консоль используется ApplicationLogger.logger.info("...");, но после каждого вывода в консоль он делает перенос строки. Простым языком, он выводит как println, а мне нужно что-бы выводил в консоль как print.
Файл log4j.properties:
#
log4j.rootLogger=INFO, file, stdout
log4j.appender.file=org.apache.log4j.RollingFileAppender
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.appender.file.File=./checkers.log
log4j.appender.file.MaxFileSize=5MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.append=false
#
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,SSS} %-5p %c{1}:%L - %m%n
Класс ApplicationLogger:
public class ApplicationLogger {
public final static Logger logger = Logger.getLogger(ApplicationLogger.class);
}
Может нужно поменять PatternLayout на другой?
Как написал Anton Shchyrov, нужно убрать %n из layout. ConversionPattern должен стать таким:
log4j.appender.file.layout.ConversionPattern=%m
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости