There are a whole lot of logging frameworks out there. Log4j is one of the most popular ones. I prefer the "successor" of log4j: slf4j with the logback implementation. Slf4j separates the api from the actual implementation and can be used in conjunction with log4j. Log4j, slf4j and logback are all made by Ceki Gülcü.
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." --- Martin Fowler
Please correct my English.