io.Connect Legacy Metrics vs. io.Insights (OpenTelemetry) comparison

When setting up telemetry in io.Connect Desktop, you may come across two different configuration styles:

  • A "metrics" configuration that lists publishers, a rest endpoint, and filters (whitelist/blacklist).

  • An "otel" configuration with an enabled flag and metrics, traces, and logs sections.

This article explains the difference and which one to use.


What is the difference between the “metrics” configuration and the “otel” configuration?

  • The "metrics" configuration belongs to the legacy observability product. Apps publish to it through the legacy Metrics API (the io.metrics object).

  • The "otel" configuration belongs to io.Insights, the current OpenTelemetry-based solution.

io.Insights is a light-weight and agile solution for publishing signals (metrics, traces, and logs) based on the widely adopted OpenTelemetry standard. It is implemented as a configurable built-in feature of io.Connect Desktop and io.Connect Browser.

See: io.Insights Documentation - General Overview

Which one should I use?

Use io.Insights (the OpenTelemetry-based product). It is the recommended approach for new telemetry setups.

The legacy Metrics API (accessed through the io.metrics object) is still available and can still be used, but it is considered a legacy product. If you are currently using it, migrating to io.Insights is recommended.

See: Legacy io.Insights - Overview

Are there differences between the two in terms of metrics reporting?

The main difference is that io.Insights is an OpenTelemetry-based, lightweight and modern solution that can be enabled with minumum configuration. Its metrics are published as standard OpenTelemetry metrics payloads, so they can be consumed by OpenTelemetry-compatible tooling like Grafana, Prometheus, etc. io.Insights succeeds the legacy Metrics observability product.

See: Signals - Metrics

Does the configuration differ between Windows and macOS?

No. The io.Insights configuration is identical on Windows and macOS.

io.Insights is enabled and configured through the "otel" top-level key in the system.json system configuration file. The same configuration applies on both Windows and macOS.

In io.Connect Desktop 10.1, io.Insights added publishing of OpenTelemetry traces and logs and support for publishing custom metrics.

How do I enable io.Insights?

Publishing of telemetry data is off by default. You enable and configure io.Insights through the "otel" top-level key in the system.json system configuration file:

  • Set the top-level enabled flag to turn on telemetry publishing.

  • Enable each signal type you want to publish (for example, metrics, traces, and logs) with its own enabled flag.

All of these flags default to false. For the exact property semantics, defaults, and configuration examples, see the official configuration reference: io.Insights Configuration - io.Connect Desktop