Logging is a critical part of the ABL engine, because it's often the only way to understand the behavior of your logic. The ABL engine uses Apache's Commons Logging package to remain independent of the underlying logging mechanism. By default, ABL will use Apache's log4j, but you are free to use other packages, such as Java's own logging mechanism.
The following is a list of the loggers used by the ABL engine.
In case you're curious about the abbreviated names, they're standardized at 3 + 6 characters so that logging messages will line up nicely in the log.
The configuration for logging depends a great deal on which logging system you use. If you use log4j, the easiest way to configure logging is to have a file named
If you use a different logging mechanism, you should refer to its documentation.
If may sometimes be desirable to change the logging level of a specific logger using the API. To do so, you will need to know in advance what logging system you are currently using (e.g. log4j, JDK logging, etc...). Given this, you can then use code similar to the following:
LogicLogger logicLogger = LogicLogger.getLogger(LoggerName.LOGICFINDER);
Log4JLogger log = (Log4JLogger)logicLogger.getLog(); // This is obviously specific to log4j