JavaZone 2009 - Learning an old dog named Log4j new tricks using Spring and JMX
When developing real-world applications, debugging can be quite cumbersome; the logging is at a level that doesn’t give you a clue of what’s going on, the log file is hard to retrieve and monitor, and you are not able filter out what is important for you. Typically an application restart is needed to change the logging level. And guess what, the buggy state of your application has disappeared as free beer at PartyZone, and your logs are flooded with unrelated information
We have met these challenges several times when we at TANDBERG develop Java based products, and especially when we are designing clustered applications. Then it can be rally hard to determine which instance of the cluster that serves the incoming request. Collecting the logs from the instances in a centralized Syslog server, and apply filtering to get relevant information dynamically is very helpful for us when debugging these kind of applications.
This presentation will provide the tools that make you able to dynamically change the log level remotely, redirect you logs to a centralized Syslog server, and filter log messages. In addition you will be shown working code examples of how to customize Log4j and instrument your application using JMX.
All this will be achieved by using a killer combo of Log4j, Spring, and JMX presented to you as live and kicking code.
The presentation will also give you an overview of the relevant mechanics in Log4j, Spring and JMX that makes the foundation of the example code in the session.
The presented material is based on personal experiences from real-world Java products development.
Rune Schumann
Rune Schumann works as Senior Software Architect at the R&D department in TANDBERG, and is cutting code at a daily basis in a Java based video conferencing product.
Main interests are distributed systems designed for high performance under a large amount of requests, clean code and software architecture.
Rune has 10 years of experience from Java projects working as software developer, architect, and project manager. In addition Rune has written the articles “Evolutionary integration with ESBs” and “SEDA to Ensure Service Availability” posted at InfoQ.
