The correlation ID is a unique identifier value attached to requests and messages referencing a particular transaction or an event chain.
The correlation ID is generated at the first point of the transaction and passed through the entire transaction process. As the transaction traverses several services, each service appends its log of events to this correlation ID.
All the processes are handled in batches for the Concord container, with each batch receiving a unique sequence number. When the batch process is initiated, the sequence number and the correlation IDs are logged. Any subsequent batches are logged with the sequence number only.
To troubleshoot a transaction problem, you can search the correlation ID logs generated by the request in each service to pinpoint where the error occurred. For example, you can view logs for a specific
correlation_id value in vRealize Log Insight.
Verify that you have vRealize Log Insight installed and configured. See vRealize Log Insight Documentation.
Familiarize yourself with the vRealize Log Insight dashboard and filtering menu items.
- Log in to vRealize Log Insight.
- To access the collected logs, click the Interactive Analytics tab.
You can search and filter log events from this tab and create queries to extract events based on timestamp, text, source, and text boxes in log events. You can view charts of the query results and save these charts for later on the Dashboards tab.
- Add the correlation_id value in the search dialog box.
If you do not have the correlation_id available, skip to step four.
- Navigate to the Field Table sub-tab.
Source- IP address of the Replica or Client node.
Service - daml_ledger_api, daml_execution_engine, or concord.
- Select the correlation_id value.
- In the Add Filter section, enter the correlation_id value.
To troubleshoot the problem, you can identify the correlation ID value from the table and detect where the error occurred in the transaction.