VMware Blockchain comprises OpenTracing API to support distributed tracing in the Replica Network. Distributed tracing provides a visual workflow that shows end-to-end distributed application tracking as requests are processed. In addition, graphic workflow rendering improves the identification of errors and debugging system performance problems.

Each component sends information to Tanzu Observability by Wavefront when a request is completed, such as the transaction start and end time information. The Tanzu Observability by Wavefront support for OpenTracing can be used to analyze traces. The components that generate OpenTracing transaction data within VMware Blockchain are the Daml ledger, BFT client, Replica nodes, and the Daml execution engine.

Figure 1. Sample VMware Blockchain Distributed Tracing Map

You can use the Tanzu Observability by Wavefront tracing dashboards to:

  • Monitor whether your transaction was completed as expected.

  • Identify the specific operations that affect system performance.

  • Troubleshoot and analyze reported errors.

Current Distributed Tracing Limitations

Some distributed tracing limitations are as follows:

  • Deployed blockchain nodes must have outbound connectivity to the Tanzu Observability by Wavefront service hosted on the cloud to send the metrics information.

  • For the primary workflow only, the transaction traces originate from the Daml Ledger, cycle through all the components within the blockchain network, and end at the Daml Ledger.

  • DApps must send tracing information in their request to the Daml Ledger to generate complete transaction traces.