Observability over Temporal.io workflows and activities

Helios' instrumentation of Temporal.io provides developers with advanced observability & monitoring capabilities over their workflows and activities taking place as part of the distributed application.

Below are a few examples of how to leverage E2E observability in Helios when using Temporal.io as part of your distributed application.

Configuration

Node.js

To apply the automatic instrumentation, add the @heliosphere/opentelemetry-instrumentation-temporal NPM package to the relevant service (Temporal client / workflow / worker), and enable it as follows:

const { initialize } = require('helios-opentelemetry-sdk')
const { TemporalInstrumentation } = require('@heliosphere/opentelemetry-instrumentation-temporal')
const provider = initialize({ ... });
const instrumentation = new TemporalInstrumentation();
instrumentation.setTracerProvider(provider);

Once enabled, all the activity invocations of each workflow appear under the same trace, along with all the operations performed by them (e.g. HTTP calls, DB queries, etc.) and their payload.

Temporal.io instrumentation is supported for Node.js services.

Distributed tracing & visualization

A Temporal workflow and activity will be shown as 'RunWorkflow' and 'RunActivity' respectively in a specific service along with it's name. For example, the following service has 1 workflow with 2 Temporal activities.

The visualization groups together the workflows and activities which are originated from the same service, so it will be clear what belongs to a single service.

Observability & monitoring

To keep track on your Temporal, you can use the search bar to search for specific workflows and activities and set an alert combining this filter with any other one.

Using these filters, labels can be configured and allow you quick access and observability to you most important activities and workflows. Also alerts and notifications can be configured on the label.
Combining these filters with filters such as With operation errors won't let you miss errors on your crucial endpoints again.

A label in Helios tracking a specific Temporal activity, based on which it's possible to set alerts & notifications

A label in Helios tracking a specific Temporal activity, based on which it's possible to set alerts & notifications

Please refer Labels, alerts & notifications to see how to fully use Helios's observability features.

๐Ÿ–ค

Helios is a a dev-first observability platform that helps dev and ops teams shorten the time to find and fix issues in distributed applications. Built on OpenTelemetry, Helios provides traces and correlates them with logs and metrics, enabling end-to-end app visibility and faster troubleshooting.

Get started for free with Helios to simplify and enrich OpenTelemetry distributed tracing.