2
votes

This is my log4j.properties file.

log4j.rootLogger=DEBUG, 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
log4j.appender.file=org.apache.log4j.RollingFileAppender
#outputs to Tomcat home
log4j.appender.file.File=${catalina.home}/logs/myapp.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

This is loading bunch of logs which are related to the framework etc.

I tried to put

log4j.rootLogger=DEBUG only to load only my logs. 

I want my log file to have only my project logs. Where should I need to change?

The way I'm logging my statements are

private Logger logger = Logger.getLogger(MyClass.class);

logger.debug("bla bla");
2

2 Answers

0
votes

You should configure logger as per your application package name.

Suppose, your application package name is test.example then add below line in your log4j.properties -

log4j.logger.test.example = DEBUG, stdout, file
log4j.additivity.test.example = false

It will enable debug logs in classes which are present in test.example package as well as in sub packages.

For removing framework related logs, change rootLogger log level to ERROR or WARN -

log4j.rootLogger=ERROR, stdout, file

It will display only errors which are related to framework classes or classes which are not present in above package test.example and its subpackages.

-1
votes
log4j.rootLogger=INFO,myproject

#My logger option
log4j.logger.com.myproject=ERROR
log4j.appender.myproject=org.apache.log4j.DailyRollingFileAppender
log4j.appender.myprojectapp.File=${catalina.home}/logs/myproject.log
log4j.appender.myproject.DatePattern='.'yyyy-MM-dd
log4j.appender.myproject.layout=org.apache.log4j.PatternLayout
log4j.appender.myproject.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L -%M - %m%n
log4j.appender.myproject.Threshold=DEBUG

#to not add myproject logs to other logger
log4j.additivity.com.myproject=false