Original question: What is difference between Log4j and Log4Net and in what scenario should these two be used?

Updated question: Ok so one is for the Java language while the other is for C#/.Net language(s).

That stated, are there commonalities that effect both log4j and log4net? Consider, just for example, if a bug was found to effect log4J; is there a risk that something similar could effect log4Net too (or any of the other ports)? I ask as both are developed by Apache and according to their logging service documentation, it seems log4net is a port of the original log4J, "similar in spirit to the original log4j" as they state. How close is that spirit and is it something that could feasibly effect other loggers?

2

2 Answers

The Apache Logging Services Project creates and maintains open-source logging frameworks to the public. These services can be simply seperated as below;

  • Apache Log4j : Next-generation Asynchronous Loggers based on the LMAX Disruptor library. (for Java, JSP, ...)

  • Apache log4php : Versatile logging framework for PHP.

  • Apache log4net : For the Microsoft .NET runtime log framework.
  • Apache chainsaw : A GUI based log viewer. Chainsaw is a companion application to log4j written by members of the log4j development community.
  • Apache log4j 1 extras : Jar file full of additional functionality for log4j 1.2.x.

  • Apache log4cxx : Logging framework for C++ patterned after log4j.

Log4Net is the .NET (C#, Visual Basic,... ) port of Log4j (which is for Java) .

So, very simply, they are not used with the same languages.