Support for IBM Mobile Foundation
Collecting this information before seeking IBM support will help IBM understand the problem and save time analyzing the data.
MustGather for support cases
The term "MustGather" represents the diagnostic data, which includes the system information, symptoms, log files, traces, and so on, that is required to resolve a problem. By collecting MustGather data early, even before you open a support case, you help IBM Support quickly determine the following information:
- Whether symptoms match known problems (rediscovery)
- If you have a non-defect problem that can be identified and resolved
- If there is a defect that identifies a work around to reduce severity
- If locating the root cause can speed development of a code fix
The following information should be collected for any problem encountered:
- Provide the exact version of MobileFirst Platform (including iFix level) being used.
- Describe in detail the problem that is being encountered.
- Describe any changes that were made just prior to when the problem occurred.
- Describe in detail the steps required to reproduce the problem.
- Provide the specific times when the problem shows itself in any logs provided.
- Describe how frequently the problem occurs and whether there are any triggering events for the problem.
- Describe any workarounds used to temporarily resolve the issue.
- Describe any steps you have already taken to try and resolve the problem yourself.
- Describe in detail the topology of the environment. This will allow for a better understanding of the message flow within the system.
- What application server and version are you running MobileFirst Platform on?
- What database and version are you using for the backend?
Please see the following for details on how to enable tracing on MobileFirst Platform Server and Application Center. Similar steps can be used to enable tracing for Analytics Server.
MobileFirst Platform Server trace strings
Application Center trace strings
Analytics Server trace strings
PUSH Service trace strings
Once collected provide the files to support for review. See the following for details on how to upload to your support case.
After collecting the logs you should undo the above steps so as to disable the trace. The resulting trace logs can grow large very quickly and negatively impact the performance of your server.
- Describe the client and browser version.
- Open the debugger of the browser and copy the contents of the console to a file and upload to the case
Mobile Device: Android
On the Google Android platform, capture the debug messages for the device by running the Android Debug Bridge (ADB) logcat command on a workstation that is attached to the device with a USB cable. ADB is included in the installation of the Android Developer Tools.
You can run the following command that is appropriate for your workstation from an command-line that is running in the platform-tools directory where the android SDK is installed.
Administrator/root privileges might be required to successfully run logcat.
- For Microsoft Windows operating systems: adb.exe logcat -d -v time >logcat.txt
- For Linux operating systems: ./adb logcat -d -v time>logcat.txt
Collect the logcat.txt file that is created and upload to support.
Mobile Device: iOS
Copy the log files using Xcode Organizer. To access the Organizer, navigate to Window → Organizer → Select Device in the Left Pane → Device Logs. Then, copy the device log files as part of the MustGather materials.
Client-side Log Collection
Logging is the instrumentation of source code that uses API calls to record messages in order to facilitate diagnostics and debugging. IBM Mobile Foundation provides a set of logging API methods for this purpose. See the following link for more details on Client-side log collection.
Use a tool such as Wireshark to listen on the network interface.
If Wireshark is encrypted due to security then use the instructions in the following document to perform this.
You can export private keys directly from the WAS keystore.
Export the certificate:
openssl pkcs12 -in mykeystore.p12 -nokeys -out cert.pem
Export the private key (unencrypted):
openssl pkcs12 -in mykeystore.p12 -nodes -nocerts -out key.pem
For MobileFirst Platform support to view the traffic unencrypted, there is an option to use session keys. This way, private key does not have to be shared with support. However, the step mentioned above should be executed first. Once you see the plain text traffic with private key there, follow the instructions here.
Specifically around : 'Allowing Others to Decrypt Without The Private Key'.
If running Unix/Linux OS, use tcpdump command.
# tcpdump -w <output pcap file name> -i <interface> -s 0
# tcpdump -w network.pcap -i eth0 -s 0
Note: the value for the last switch ( -s) is zero. -s is important. This ensures, the packets are captured in its entirety - 65K.
- A zip file containing all of the logs retrieved from your Pod(s)
- The configmap used to create the logs
- The server.xml file that was overridden by the configmap
Files for MobileFirst Platform support can be submitted using FTP to the Enhanced Customer Data Repository (ECuRep) associated with your case.
For information about how to do this see Exchanging information with IBM Technical Support.