Alternative log file other than server log

Morning, experts,

Is there any easy way to create log file dedicated to a specific wM application only, rather than using server log (“debug.log” service) file?

The reason is, we have many wM applications generating server logs, rather than look for data from lengthy server log file, I do want to have the option to create/maintain a dedicated log file for the new application.

Has anyone done that before? Thanks!

Use the ServerAPI.getLogStream() method. It will create a new log file that is rotated with the other IS log files.

– Tim

Tim, could you explain how to use it, e.g., from which package…


You have to write Java services to use it (at least as wrappers so that you can call it from flow services). There’s an implementation of it in the AuthLDAP package on Advantage.

Thanks, Tim, I’ll check it out.


Another approach is to create a package with java services that wrap Log4J, Commons Logging or another logging implementation such the one that shipped with JDK 1.4.

This example is over 2 years old and may need a few tweaks to work with current JDK and Log4J versions, but should give you some ideas on how to do this.

Tim’s suggestion is great if you want to use the same format and general location as the standard WM logging. If you need to implement a different log message format or add additional behaviors such as logging to a JDBC or JMS datasource, you can configure those behaviors with Log4J Appenders.



Besides these suggestions, take a look at WmMonitor. It is WM software package that installs on IS and centralizes logging to a database (so it isn’t a good choice to log a “database connection failure” error ). It can centralize logging for several servers. It has a useful interface (‘Monitor > Services > Search’) to search for errors by type, by service name, server id, context ID and by username. It also has this neat functionality where you can log the entire pipeline of the top level service on failure. The logged pipeline is essentially a testcase and it be resubmitted to a different server (say, to development) right from the WmMonitor interface.