Expresso Framework is an open standards-based J2EE architectural framework that allows the developer to concentrate on application logic. It is a library of extensible Java Server application framework components for creating database-driven Web applications based on open standards. Expresso integrates with Apache Jakarta Struts, which emphasizes presentation and application configuration, and bringing a powerful tag library to Expresso. Expresso adds capabilities for security, robust object-relational mapping, background job handling and scheduling, self-tests, logging integration, automated table manipulation, database connection pooling, email connectivity, event notification, error handling, caching, internationalization, XML automation, testing, registration objects, configuration management, workflow, automatic database maintenance, and a JSP tag library.
Log4j is a logging package written in Java. Log4j allows you to log to a file, a java.io.Writer, a remote server, or a syslog daemon. The package is designed so that log statements can remain in shipped code without incurring a high performance cost. One distinctive feature of log4j is the notion of hierarchical loggers. Using hierarchical loggers, it is possible to select (at runtime) which log statements are output at arbitrary granularity. Users can choose to implement their own log formats and output strategies.
miniLogger is a very small (4 classes and a 10KB jar) and easy to use logger. It uses a logging API that is a subset of JDK 1.4 logging but works on all Java 2 versions. It has been tested on Windows, Solaris, IRIX, and Linux for versions 1.2 and 1.3 of the Sun JDK. It supports logger control from the command line. Logger names are hierarchical separated by dots, and selecting any name automatically selects all names below. If logger_name is an empty string, it will affect all loggers. The loggers and level options are evaluated from left to right. It prints the thread name, source file name, and number line by default, and output can be redirected from System.err to file or any PrintStream. Finally, the logger hierarchy can easily mirror a package/class hierarchy or can be arbitrarily defined by the user.
ALF is a native logging framework for Java with the unique advantage of supporting automated method tracing. This platform-independent library allows developers to debug their applications quickly without adding any code. By simply adding an argument to the JVM, you will get immediate method tracing, which can be filtered by package or class and sent to the console or a file. You can also use the ALF logging library to integrate information, warning, error, or exception statements into the output.
Jukebox is a collection of reusable components that allow you to create a flexible server-side and middleware framework. It features semaphores and services (not quite your usual set), a Finite State Machine implementation based on Generics, a Datastream framework (data producers, consumers and loggers), and a JDK 1.6 compliant JMX framework based on Annotations.
Simple Log is a small library that does logging very simply and requires you to do almost nothing (other than actually logging) to get log output to happen. It is much simpler to use than a logging framework, especially in terms of configuration. It doesn't attempt to solve every logging problem in one package, but contains enough features to be a viable alternative for most applications that need logging. This tool will handle the logging needs of most small- to large-sized projects, but with an almost non-existent learning curve.
Logback is intended as a successor to the popular log4j project, and was designed by log4j's founder, Ceki Gulcu. The basic architecture is sufficiently generic so as to apply under different circumstances. It is divided into three modules. The Core module lays the groundwork for the other two modules, whereas the Classic module can be assimilated to an improved version of log4j. It natively implements the SLF4J API so that you can readily switch back and forth between logback and other logging systems, such as log4j or JDK14 Logging. The Access module integrates with Servlet containers to provide HTTP access log functionality. You can easily build your own modules on top of the Core module.