|
Right Java tools for J2EE, Web Service, Grid and more |
| |Home | Products | Documents | Downloads | Purchase | Support | Company | Partners | Contact | |
SuperLog is based on open source LimpidLog and AuditLog from Acelet.
Contents
There are two purposes of logging: log for auditing and log for debugging.
Log for auditing is part of business logic of the application. For example, you want record the resources that a user visited. You know what to log at the development time. This is relatively easy.
Log for debugging is not part of business logic. You do not really know what to log at the development time, so you just generally hard-code many logging statements, hopping some statements will record useful debug information when you need later.
SuperLog combines these two type of logging under one roof. SuperLog is based on open source LimpidLog and AuditLog from Acelet.
Log for debugging
LimpidLog is a revolutionary logging system. You do not need to hard code log statements. At runtime, you can register a class of interest and the system will log all important information about the class. When you are done, you can de-register the class and the class will not generate any log information anymore..
LimpidLog is for J2EE logging, Java EE logging and Java Logging (Java logging for standalone Java application). LimpidLog supports J2EE applications, Java EE applications and standalone Java applications.
Log for auditing
AuditLog is log for auditing. It is a plugin for LimpidLog.
The application must run using Java 1.5 or later, not 1.4.
The GUI management of LimpidLog can run using Java 1.4, 1.5, or later.
LimpidLog is limpid. You do not need to do anything at development time. AuditLog is not limpid. You need to hard-code your log statements at development time. The audit log statements are part of your application logic.
When you start your application or application server, you need to specify SuperLog as a Java option -javaagent:
SuperLog is used with Java (JVM), not directly used with your application. When you run Java, either your Java application or J2EE server, you need -javaagent option. At that point, you specify SuperLog as a -javaagent option. SuperLog will be called by Java.
SuperLog combines both LimpidLog and AuditLog, so the usage very similar with the usage of LimpidLog. See How to use LimidLog and How to use AuditLog for detailed information.
Procedure
1. Run your application with -javaagent option. The jar file specified is of SuperLog. Actually, the LimpidLog part inside the SuperLog is called. Then, LimpidLog automatically detects and loads AuditLog.
2. Run GUI management tools. The main GUI is LimpidLog's. It automatically detects and loads a plugin panel for AuditLog.
Run your application with -javaagent option
When you start your java program or J2EE application server, you need to give an option, for example:
-javaagent:superlogXXX-XXX.jar=port=<port_number>
where XXX-XXX donates for the version number. <port_number> is the port number you want to use. For example, if you download SuperLog version 410-100 and want to use port 9876, the option will be:
-javaagent:superlog410-100.jar=port=9876
You will see information about both LimpidLog and AuditLog on your screen:
LimpidLog 4.10 Bytecoder1. Acelet. GNU GENERAL PUBLIC LICENSE V2. ASM from ObjectWeb. AuditLog-as-LimpidLog-plugin 1.00 Acelet. GNU GENERAL PUBLIC LICENSE V2
Example for Tomcat
Modify startup.bat (not catalina.bat) and add:
set JAVA_OPTS=%JAVA_OPTS% -javaagent:c:\myDir\superlogXXX-XXX.jar
Example for JBoss
Modify run.bat and add:
set JAVA_OPTS=%JAVA_OPTS% -javaagent:c:\myDir\superlogXXX-XXX.jar
Example for Weblogic 9 and 10
Modify startWebLogic.cmd adding:
set JAVA_OPTIONS=%JAVA_OPTIONS% -javaagent:superLogXXX-XXX.jar
where superLogXXX-XXX.jar must be under current directory, or the absolute path is included.
Run GUI management tools
At runtime, open a new Operating System console to run the manager of LimpidLog:
java -jar superlogXXX-XXX.jar
The GUI manager allows you to dynamically register and deregister classes for LimpidLog. It does not allow you to set "break points": your application runs continuously at runtime. The GUI manager will automatically detect and load AuditLog as a plugin. It allows you dynamically set log shreshold.
The Java which runs LimpidLog manager does not have to be the same version of Java which runs the application in question. You can run it on any computer which can communicate with your application (the host name and port are accessible).
You will see:

If there is a plugin running at runtime, LimpidLog GUI manager will automatically detect and load a plugin panel:

See Document about LimpidLog windows for details.
SuperLog combines LimpidLog and AuditLog. See The performance price to pay of LimpidLog and The performance price to pay of AuditLog for detailed information.
SuperLog combines LimpidLog and AuditLog. See Configuration Options of LimpidLog and Configuration Options of AuditLog for detailed information.
SuperLog is thread safe.
SuperLog combines LimpidLog and AuditLog. See Programmatically configure of LimpidLog for detailed information.