About debugging a service
There are four ways to debug a service:
- Customized service replay debugging
- Full service replay debugging
- Live service debugging
- Ad hoc service debugging
- You do not want to limit the number of service instances (slots) available to your application,
- You do not want to modify the application configuration other than debugging configuration, and
- You do not want to modify your service code solely for debugging purposes.
The techniques discussed in this section apply to debugging a service in both IBM® Spectrum Symphony Developer Edition and IBM Spectrum Symphony.

Customized service replay debugging
- The service exits or crashes during the execution of a method.
- The service throws an exception during the execution of a method.
- The service times out while executing a method.
- The service returns from a method with an exit code.
You can use the service event replay logs to try to reproduce your problem; you replay the relevant service events that occurred on the service instance.
You should be able to catch the most common service problems using this mode, particularly problems that are isolated (non-cumulative). If you cannot reproduce your problem in this mode, try debugging your service using the full service replay debugging.
Full service replay debugging
Full service replay debugging generates service event replay logs for every service instance in your cluster, regardless of whether an error occurs in that service instance.
You can use the service event replay logs to try to reproduce your problem; you replay the service events that occurred on the service instance.
You should be able to use this mode to catch problems that are cumulative. For example, this mode might help you to find that your service memory becomes more and more corrupted at each task invocation. You would also use full service replay debugging if your service problem does not generate a SERL in customized mode, or if you cannot reproduce the problem using customized service replay debugging.
If you cannot reproduce your problem using either customized or full service replay debugging, try debugging your service using live service debugging.
Live service debugging
Live service debugging allows you to debug your service instance as it is running live.
This mode gives you an exact picture of the runtime environment, not just a simulated environment.
If you still cannot reproduce your service problem using this mode, try debugging your service using ad hoc service debugging.
Ad hoc service debugging
If none of these methods help resolve a service problem, try logging, experimentation, or other techniques familiar to you.