Custom Telemetry Ingestion

More advanced users have the option to use OpenTelemetry Protocol Exporters instead of Middleware's Agent and associated SDKs to ingest data. Each language will have a different approach which can be an adaptation from our relevant Host Agent.

The example below uses JavaScript and an abstraction from our Node Agent. All other agents can be found in our middleware-labs repo. If you need assistance with a specific language we are happy to work with you, however, we do not have every approach documented at this time.

Instrument your OpenTelemetry code with languages that are supported by both Middleware and OpenTelemetry.

Installation

Step 1: Setup Resource Attributes

Embed OpenTelemetry Resource Attributes:

Learn more about OpenTelemetry Resources here.

Resource Attributes

FieldTypeRequiredDescription
mw.account_keystringAPI key that authenticates your MW Account
mw_agentbooleanRequired by MW
SERVICE_NAMEstringLogical name of service requred by OpenTelemetry

For more information on OpenTelemetry JavaScript Resources, head here

Step 2: Configure your Exporter

Configure your exporter(s) to send data to Middleware with OTLP/HTTP or OTLP/gRPC.

Log ingestion is an experimental feature within Open Telemetry. Proceed with caution.

OTLP/gRPC
OTLP/HTTP

Need assistance or want to learn more about Middleware? Contact our support team in Slack.