Managing the agent and integration server logs

The IBM® Sterling™ Order Management System Software provides the AGENT_LOG_APPENDER Appender that is used for printing logs from the agent and integration servers. All the agent and integration servers running from an IBM Sterling Order Management System Software instance write logs in the file that is specified in the appender definition.

The logging in the IBM Sterling Order Management System Software is according to the specifications in the log4j configuration <runtime>/properties/ log4j2.sample.xml file.

Note: When you modify the XML file, it does not change the log4j2 configuration and is a static representation of the programmatic configuration at server startup.

For more information about changing the log4j2 configuration, see Customizing log4j2 configuration.

Check the AGENT_LOG_APPENDER in <runtime>/properties/ log4j2.sample.xml file to understand the default configuration of file path, log file name, filepattern for rollover, rollover strategy, and configuration.

You can run multiple agents or integration server JVMs on same physical machine and retrieve the logs for each JVM in a different file. The IBM_LOG_FILE property is read as java system property and is considered as a JVM parameter. This JVM Parameter sets on initializing the server JVM by the start agent or integration server script. You can pass a unique name in the IBM_LOG_FILE on starting each agent and integration servers so that the AGENT_LOG_APPENDER Appender logs in different files for each agent or integration server.

For example, lets consider two agent servers, OrderScheduleServer and OrderPurgeServer. In this case you need to pass the -DIBM_LOG_FILE=OrderScheduleServer as a JVM argument when starting the OrderScheduleServer agent server. Similarly, you need to pass the -DIBM_LOG_FILE=OrderPurgeServer as a JVM argument when starting the OrderPurgeServer agent server. Now, all the logs that are originated from the agent server, OrderScheduleServer are written to the agentserverOrderScheduleServer.log file and all the logs that are originating from the agent server, OrderPurgeServer are written to the agentserverOrderPurgeServer.log file.

This helps in exporting and examining the logs relevant to a particular agent or integration server. In the absence of IBM_LOG_FILE parameter, all the agent and integration servers running on the IBM Sterling Order Management System Software instance always write logs in the <runtime_sandbox>/logs/agentserver.log file.

This property also applies to ALL Appender too, which writes to sci.log file. So in previous example you will also get- sciOrderScheduleServer.log and sciOrderPurgeServer.log. The ALL appender contains messages from rest of the product’s classes that are not part of agents framework.