Description: Log4m is designed to be relatively fast and very easy to use. It has been designed to work well in a matlab environment.

log4m uses the same level system as log4j {'ALL','TRACE','DEBUG','INFO','WARN','ERROR','FATAL','OFF'} and is an attempt to create a single-file, robust drop-in system for more advanced logging. It only provides a single logger object within an entire matlab instance, so you don't need to track a file or object reference.

I currently use this in long-running compiled jobs so I can track how they are performing without manual intervention or observation.

--

Example:

%To create the logger reference:

L = log4m.getLogger('logfile.txt');

% To log an error event

L.error('exampleFunction','An error occurred');

% To log a trace event

L.trace('function','Trace this event');

--

If you want to display all logging information to the command prompt while only writing major events worse than an error to the log file, you can set the desired log levels accordingly.

L.setCommandWindowLevel(L.ALL);

L.setLogLevel(L.ERROR);

%Now all messages will be displayed to the command prompt while only error and fatal messages will be logged to file.

-----

Note: This project is similar to the log4matlab code acknowledged, but is easier to use and has an API more in the 'matlab style'.