Can't logging in file from tomcat6 with log4j
Posted
by
Ivan Nakov
on Server Fault
See other posts from Server Fault
or by Ivan Nakov
Published on 2011-11-29T16:41:54Z
Indexed on
2011/11/29
17:53 UTC
Read the original article
Hit count: 575
springframework
|log4j
I have one stupid problem, which is killing me from hours. I'm trying to configure loggin to my project. I started with a simple Spring MVC project generated by STS, then added org.apache.log4j.RollingFileAppender to the existing log4j.xml file.
<?xml version="1.0" encoding="UTF-8"?>
<!-- Appenders -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p: %c - %m%n" />
</layout>
</appender>
<appender name="FilleAppender" class="org.apache.log4j.RollingFileAppender">
<param name="maxFileSize" value="100KB" />
<param name="maxBackupIndex" value="2" />
<param name="File" value="/home/ivan/Desktop/app.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %5p %c{1}: %m%n " />
</layout>
</appender>
<!-- Application Loggers -->
<logger name="org.elsys.logger">
<level value="debug" />
</logger>
<!-- 3rdparty Loggers -->
<logger name="org.springframework.core">
<level value="info" />
</logger>
<logger name="org.springframework.beans">
<level value="info" />
</logger>
<logger name="org.springframework.context">
<level value="info" />
</logger>
<logger name="org.springframework.web">
<level value="info" />
</logger>
<!-- Root Logger -->
<root>
<priority value="debug" />
<appender-ref ref="FilleAppender" />
</root>
When I deploy project to tomcat6 server and open the url, logger doesn't generate log file.
I'm trying to log from this controller:
@Controller public class HomeController {
private static final Logger logger = LoggerFactory.getLogger(HomeController.class);
/**
* Simply selects the home view to render by returning its name.
*/
@RequestMapping(value = "/", method = RequestMethod.GET)
public String home(Locale locale, Model model) {
logger.info("Welcome home! the client locale is "+ locale.toString());
Date date = new Date();
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);
String formattedDate = dateFormat.format(date);
logger.debug("send view");
model.addAttribute("serverTime", formattedDate );
return "home";
}
}
When I log from this simple Main.class, it works correct.
public class Main {
public static void main(String[] args) {
Logger log = LoggerFactory.getLogger(Main.class);
log.debug("Test");
}
}
I'm using tomcat6 and Ubuntu 11.10. I made a research in net and i found various options to fix this problem, but they don't help me. Please if someone have ideas how to fix it, help me.
© Server Fault or respective owner