Flow Traces

Use flow traces to view all messages processed across flows in the selected time range. On the Overview page, you can see in-flight, complete, failed, and total message counts for all flows. To view processed messages, select Flow traces in the left navigation menu. The following image shows flow traces from the past seven days:

The list of flow traces includes the start time, processing time, flow ID, state, and message ID.

Filter Traces

Navigate to the Flow Traces page by selecting a message count button, either from the Overview page or an individual flow’s page. For example, the message count in the following image acts as a button to filter by failed message:

The button includes a yellow warning sign and a count of 29 failed messages.

If you select this button on an individual flow page, the page also applies a filter for that flow ID. Add more filters by selecting the search bar at the top of the page. The following image shows the search bar with filters already applied and another being added:

The tool bar has filters for the flow ID and state, with a dropdown to add a third filter.
The Beatbox filter is used to narrow the list down to flows on a specific Beatbox installation. If "Beatbox: Cloud" is selected, however, then all Beatbox flow traces are excluded. You can also double-click the name of the Beatbox in the filter to search by ID instead.

Download Traces

The filtered flow traces can be downloaded as a CSV file by selecting the save button ( ). The CSV file will include the following values, regardless of which columns are actually present on the page:

START_TIME;END_TIME;PROCESSING_TIME;ORIGIN;FLOW_ID;FLOW_NAME;STATE;PRINCIPAL;MESSAGE_SIZE;MESSAGE_ID;CORRELATION_ID;ERROR_CATEGORIES

The column "PRINCIPAL" in the CSV file is the same as "Service account" in Utilihive Heartbeat.

Inspect Failed Messages

Expanding a message in the flow traces list will reveal the number of delivery attempts made. Selecting a delivery attempt will then reveal the sequences of events/processors that the message went through. The following image demonstrates the flow trace for a failed message:

The expanded attempt displays a successful start but then errors for the next three steps.

Selecting either the folder button ( ) or error button ( ) will display the error messages that came through in the payload. The following image displays the payload for a failed restRequest processor:

The payload overlay displays the log message from a failed POST request.

In this case, the processor attempted to make a POST request to another endpoint but received a 403 status. For easier reference, the error message can be seen in the following text:

Processing of ba47589f-38f2-4bc1-aed2-baa3ff776174 failed, reason: verification-rest-request-transience-override > restRequest: Unsuccessful status 403 for message ba47589f-38f2-4bc1-aed2-baa3ff776174 URL 'http://connect-resourceregistry/path-that-will-cause-403' HTTP Method 'GET' Authorization 'anonymous' Body: RBAC: access denied. Cause: null. Transience: transient.

Resubmit Messages

If resubmitting traces is enabled for your organization, then all applicable flow traces will include a resubmit button ( ) in the Payload column. However, you can resubmit a message only when all of the following conditions are met:

  • The target flow is a handoff flow (for example, not a REST-based source flow).

  • The flow has archived the payload of the source processor.

  • There is a separate resubmits flow that performs archive retrieval and forwards the message(s) to the resubmission flow.

  • The predefined insights-archive-user service account is given access to the resubmits flow and all downstream flows.

At minimum, you need four flows that work together to save or archive the payload, retrieve it, and resubmit it. The following diagram outlines how these flows might collaborate:

A diagram shows how an archiver flow and resubmit flow interact with a storage solution.

For technical implementation details, see Archive and Resubmission.

Batch Resubmits

Batch resubmits can be performed by selecting the resubmit button at the top of the page next to the save ( ) button. Batch resubmits are available only when the flow trace list is filtered to a single flow ID and the "Has payload" filter is applied. For example:

The tool bar has filters for the flow ID and 'Has payload' option.

A batch resubmit is useful in cases where, for example, a system has been down for several hours, and failed messages have piled up. Apply additional filters (for example, "Search: <date>" and "State: FAILURE") to narrow the batch resubmit to a specific set.

Enable Payload Retrieval and Resubmission

When payload archiving, retrieval, and resubmission are enabled, the Flow Traces UI allows users to automatically download and resubmit payloads with a single click for each trace displayed in the results view.

Set Up Payload Archiving

Follow the documentation in Archive and Resubmission and complete the following steps:

  1. Create a service account as described in Dedicated Service Account.

  2. Provide flows for payload archiving as described in Archive Payloads.

  3. Provide flows for payload retrieval as described in Retrieve Payloads.

  4. Provide flows for payload resubmission as described in Resubmit Payloads.

Configure API Access for Flow Traces

Provide the following value override when installing the connect chart, where <owner-id> identifies the organization, and <api-key> is the API key credential associated with the insights-archive-user service account:

insights:
  config:
    application.yml:
      archive:
        apiKeys:
          <owner-id>: <api-key>