Why won't my service start?

There may be a problem with your service configuration. Navigate to Symphony Workload > Configure Applications in the Platform Management Console. Select your application from the application list to view or modify the existing configuration.

  • You may have configured an invalid start command for your service in the application profile. If you are using Symphony deployment, make sure the file you are referencing is included in your service package. If you are not using Symphony deployment, check that the file exists and is accessible on all of the compute hosts. If your start command is incorrect, modify your service Start Command under the Service Definition and try again.

  • Your service's environment may not be configured correctly. If your service loads dynamic libraries or launches additional binaries, make sure that you have set environment variables required. Some environment variables that often cause problems are PATH, LD_LIBRARY_PATH (Unix only), LD_PRELOAD_32 (Solaris 32bit applications only), and LD_PRELOAD_64 (Solaris 64bit applications only). If your service environment is incorrect, add or modify Environment Variables under the Service Definition and try again.

  • For a .NET application, ensure that the .NET framework is installed and that it is the correct version for your application.

  • Your service executable may fail to load due to lack of system memory or other resources (Unix limit set too low). Increase your OS limits.

  • On Windows, Symphony can only start about 30 service applications per host. It will fail to start any additional services. Do not configure more than 30 slots per Windows host.

  • Deployment may have failed. Refer to Why did service package deployment fail? for more information.

There may be a problem with the service implementation.

  • Your Service Instance may have timed out during registration. After the Service Instance is started, it must register back with the SIM to let the SIM know that it was successfully started. The Service Instance registers with the SIM by calling the ServiceContainer's run method. Usually this error occurs when you have performed service initialization before calling the ServiceContainer's run method. Move your service initialization to the CreateService handler method instead. By default, the SI has 60 seconds to respond back the SIM. You can configure this timeout by modifying the "duration" attribute on the Service > Control > Method > Timeout node for Method name "Register".

  • Your CreateService method might be timing out. If it is taking longer than you expected to execute, you can configure this timeout by modifying the "duration" attribute on the Service > Control > Method > Timeout node for Method name "CreateService". If your service is hung, fix the problems with your service code and try again.

  • Your CreateService method might be throwing an exception or exiting (crashing). If your CreateService method never returns successfully, your Service Instance will not continue to run. Fix the problems with your service code and try again.

You can use the Service Replay Debugger to help you narrow down issues with your service environment and implementation. For more information about the Service Replay Debugger, refer to the Knowledge Center.