About Christian Grobmeier

Christian is a passionated software developer, architect and trainer. He is a member and VP of the Apache Software Foundation, working on projects like Struts, log4j and others. He founded Time & Bill and constantly tries out new ideas.

Apache log4j is the leading logging framework

According to a survey from Zero Turnaround Apache log4j is the leading Java logging framework.Logging-in-the-Java-World-pie-framework-300x204

This was actually a very interesting survey. It shows SLF4J is most often used as a logging facade with 61%. But it seems it is most often used with Apache Log4j, which is used by 52% of all survey participants. Just 29% use logback and only 7% JDK Logging. The same number of people write their own framework.

While the report says “Logback” is the successor of “Log4j” I need to say this is wrong. The successor of Log4j 1 is Log4j2. Our users will love to know that Apache Log4j 2 is under heavy development. After all these years we are moving away from the ancient code of Log4j 1 to Log4j 2. We have learned from the lessons of the past and build Log4j 2 to be insanely fast and stable.

In fact we wanted to make Log4j 2 so reliable that you can use it as an audit logging framework. With all the other frameworks this can’t be done so far. For example, log4j 1 and logback will loose event while reconfiguring which is not acceptable when you need to audit. Read more about that in the official docs.

There are actually many more improvements which should make use Log4j 2 in favor to any other logging framework.

Not only because Log4j 2 is just fantastic (in my opinion). It’s developed with the umbrella of the Apache Software Foundation. The Foundation does take care that all developed code at Apache stays free. Nobody can suddenly close down the source repositories and force you to pay for the code. You are not tied to any commercial entity. With the ASF you prevent vendor-lock in.

At Apache Logging we invite people to join us as committers on a regular basis. We are an open community. If we see you have an long term interest in our project chances are very good that you’ll be invited to join us. In other terms: you can definitely influence Apache Logging and you can be sure that Apache Log4j is developed in a way the community wants it, not any commercial entities.

With that being said I would like to point you to another site. While the Apache Software Foundation protects your favorite Logging-Framework, many people have asked me about a standard for Logging within the JDK. Looking how widely spread slf4j is I agree there is a need. I have recently joined the “New Logging” approach. I believe it is time for the JDK to provide a standard logging facade. With such a facade the “Logging wars” can finally be put to an end. My hope is the Apache Logging team will be able to provide you a first reference implementation of that facade. Unfortunately this is a long road to go. If you are interested, join the Java.net project and voice your opinion.
 

Reference: Apache log4j is the leading logging framework from our JCG partner Christian Grobmeier at the PHP und Java Entwickler blog.
Related Whitepaper:

Bulletproof Java Code: A Practical Strategy for Developing Functional, Reliable, and Secure Java Code

Use Java? If you do, you know that Java software can be used to drive application logic of Web services or Web applications. Perhaps you use it for desktop applications? Or, embedded devices? Whatever your use of Java code, functional errors are the enemy!

To combat this enemy, your team might already perform functional testing. Even so, you're taking significant risks if you have not yet implemented a comprehensive team-wide quality management strategy. Such a strategy alleviates reliability, security, and performance problems to ensure that your code is free of functionality errors.Read this article to learn about this simple four-step strategy that is proven to make Java code more reliable, more secure, and easier to maintain.

Get it Now!  

2 Responses to "Apache log4j is the leading logging framework"

  1. jlandis says:

    Please read the actual article from zero turnaround. It in no way made any claims about log4j2. Log4j2 is in fact beta and has been for over a year. Log4j1 is dying in usage and logback gaining. I wish the author at zero turnaround would have shown a breakdown in usage of log4j1 vs log4j2, he did too after the fallout. After reading the level of attacks against logback after the report, it is evident no one is going with any actual facts. Since we are not going with facts, I’m going to assume out of the 52%, there was likely only 1% using log4j2. It is hard enough to convince a company to switch from log4j1, but going to be even harder to convince a company that yet another apache project in name only claims to be the replacement. As most would say, “what’s the point, logging just works”.

    • Christian says:

      Nobody said Log4j 2 is the leading logging framework, the whole ZT article was about log4j 1. Nobody wants to convince you to use log4j 1. In fact, I would love to see all user

      That said, for me there are a lot of reasons to stick with the original project log4j 2. And yes, I call it’s successor. It is not only the name which is the same, it is also license, development model and foundation. Call it whatever you like.

      I really can’t understand why you were writing “another apache project in name only claims”. It is exactly the one project. There are even original authors of log4j still in the team.

      Logging just works – right. It seems Logging is the only topic were no competition is allowed for some. Logging is a technology which needs to develop like any other. Some may need audit-ready logging, some not. Some like AL 2.0, some not. What’s your point? Different Logging frameworks are a good thing, as long as there is a common language – the facade. There is one dominating the market, slf4j. Use that and chose whatever logging framework you want to use.

      It’s just as easy as that. No need to glorify persons or looking at libraries different as what they are: just tools.

Leave a Reply


8 − = three



Java Code Geeks and all content copyright © 2010-2014, Exelixis Media Ltd | Terms of Use | Privacy Policy
All trademarks and registered trademarks appearing on Java Code Geeks are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries.
Java Code Geeks is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.

Sign up for our Newsletter

20,709 insiders are already enjoying weekly updates and complimentary whitepapers! Join them now to gain exclusive access to the latest news in the Java world, as well as insights about Android, Scala, Groovy and other related technologies.

As an extra bonus, by joining you will get our brand new e-books, published by Java Code Geeks and their JCG partners for your reading pleasure! Enter your info and stay on top of things,

  • Fresh trends
  • Cases and examples
  • Research and insights
  • Two complimentary e-books