Debugging Message-Based Synchronization

Describes the message-based synchronization process flow, and options available for diagnosing problems at each step of the process.

Process flow

This diagram shows a logical view of message-based synchronization communications between the enterprise information system (EIS), Sybase Unwired Platform components, and device clients. Relay server is included as an optional component.

MBS process flow
SUP Debug all communications [and MBS]

Troubleshooting options

This section describes the options available for diagnosing MBS process flow problems.

Unwired Server – data services (DS):
  • In Sybase Control Center, enable data services (DS) subsystem logging by setting its log level. The output is written in the server log.
  • Review subsystem messages for information about getting data and sending transactions.
  • For cache activities, you can enable monitoring on the package and then use Sybase Control Center to review cache statistics captured for the period monitoring is enabled.
Unwired Server – core and administrative subsystem (MMS):
  • If you like to troubleshoot at the system-level (which will record all domains and packages activities), you can enable MMS logging by setting the log level in Sybase Control Center. The output is written in the server log.
  • Select the desired application package, and enable monitoring. The captured data appears in Sybase Control Center. Use package-level logging to review data in the domain log.
  • For low-level debugging and diagnostics, you may enable "Sync Tracing" for the package in Sybase Control Center. The output is written in the server log.
  • For quick troubleshooting to locate system errors, you can check the package-level client log and MBO/Operation history in the Sybase Control Center.
  • View the MBO/Operation history in Sybase Control Center for errors during back-end interaction with the EIS.
  • On Unwired Server, review the errorlog.txt for any cache database system errors: <UnwiredPlatform_InstallDir\UnwiredPlatform\Servers\UnwiredServer\logs\errorlog.txt.
Unwired Server – messaging subsystem :
  • Use Sybase Control Center to enable server-side logging for <MSG> log subcomponents.
  • Retrieve client-side message-based synchronization trace by sending a request to the MBS device using Sybase Control Center (on the Devices tab, use Get trace). A client's log level can be set in the device settings of the Sybase Control Center.
  • Configure messaging server-side module level tracing (for users with advanced knowledge).
    • The message service uses TraceConfig.xml where log levels of individual modules can be set.
    • If debugging a Mobile Workflow application, turn on WorkflowClient tracing from the client.
    • Check the module logs – SUPBridge and JMSBridge modules, or the WorkflowClient module (to debug Mobile Workflow applications). In Sybase Control Center, the server log system merges logs from these modules.
  • On Unwired Server, review the errorlog.txt for any cache database system errors: <UnwiredPlatform_InstallDir\UnwiredPlatform\Servers\UnwiredServer\logs\errorlog.txt.
Relay server – if used:
  • Enable relay server tracing by setting verbosity to 1 or higher. You can do that by editing the rs.config file of your Relay Server and running the rshost utility. Check the System Administration topic on Relay Server Setup.
  • Review the relay server log files. The logging for rshost.exe is directed to the myrshost.log file in the C:\temp directory.
  • Check the IIS log files (windows\logfiles\W3SVC1 and HTTPERR). The IIS server log path is configurable from inetmgr from Default Web Site > Properties > Website tab > Enable Logging > Properties > Log file directory. The recommended location is C:\Inetpub\LogFiles.

On Unwired Server, check the SUP outbound enabler log for messaging based synchronization entries: <UnwiredPlatform_InstallDir>\UnwiredPlatform\Servers \UnwiredServer\Logs\<SUPServerName>.MBS<PORT>RSOE<num>.log (for example, supqa01SUPServer1a.MBS5001RSOE2.log).

Device clients:
  • For Windows and Windows Mobile, run the Sybase Settings application, and choose Show Log. The client system log for messaging activities appears. Key information includes messages related to server connectivity, server messages, and messaging client requests.
  • Use the platform-specific client logging API (Sybase.Persistence.ILogRecord in C#, and SUPLogger in Objective-C) to capture log messages and upload them (Client Log) to Unwired Server. You can view these messages in the Sybase Control Center user interface.
  • Set the device log trace level on the device and get the device logs from Sybase Control Center by selecting Applications > Application Connections > <device> > Properties > Device Advanced > and setting the Debug Trace Level to 4 or higher.

    After running the application on a device, select the device in Sybase Control Center and select Get Trace. The client trace log on the device is transferred to the Unwired Server at <UnwiredPlatform_InstallDir>\UnwiredPlatform\Servers\MessagingServer\Data\ClientTrace\.

Related reference
Sybase Unwired Platform End-to-End Process Flow
Debugging Replication-Based Synchronization
Debugging the Cache
Debugging Data Change Notification
Debugging BlackBerry Device Development
Debugging iOS Device Development
Debugging Windows and Windows Mobile Device Development
Debugging DOE-C End-to-End Process Flow
Debugging JCO End-to-End Process Flow