Troubleshooting Best Practices

Approach troubleshooting and problem-solving systematically, and take notes so you can trace your steps. Follow these guidelines to resolve issues with your client application.
  • Do not change more than one thing at a time, and document each change and its result. Try to isolate the problem: Does it seem to be local, to the client? An error message generated from the server? A network problem between client and server?
  • Use the logging facilities for your programming language to capture runtime information for the client application. See the
    Log.cs
    sample application as an example.
    • C# client logging example:
      \SDK\vsphere-ws\dotnet\cs\samples\AppUtil\Log.cs
  • Use the following VMware tools for analysis and to facilitate debugging.
    • vSphere Web Services API. The
      DiagnosticManager
      service interface allows you to obtain information from the server log files, and to create a diagnostic bundle that contains all system log files and all server configuration information. The vSphere Client and the MOB provide graphical and Web based access to the
      DiagnosticManager
      .
      PerformanceManager
      supports exploration of bottlenecks. See vsphere-performance.ditamap#GUID-91FF5022-4458-41F7-9C96-1049FAFA756A-en.
    • Managed Object Browser (MOB). The MOB provides direct access to live runtime server-side objects. You can use the MOB to explore the object hierarchy, obtain property values, and invoke methods. See managed-object-browser.ditamap#GUID-BC718D4F-3372-4195-8CB6-33F0A628CB85-en.
    • VMware vSphere Client GUI. The vSphere Client allows you to examine log files for ESXi, vCenter Server, and virtual machines, and to change log level settings. Use vSphere Client menu commands to create reports that summarize configuration information, performance, and other details, and to export diagnostic bundles. The vSphere Client maintains its own local log files.