This repository is a reference for converting observability signals (traces, metrics, logs) to/from a common InfluxDB schema.
Schema reference with conversion tables.
The golang package otel2influx
converts OpenTelemetry protocol buffer objects to (measurement, tags, fields, timestamp) tuples.
It is imported by the OpenTelemetry Collector InfluxDB exporter
and by the Telegraf OpenTelemetry input plugin.
The golang package influx2otel
converts (measurement, tags, fields, timestamp) tuples to OpenTelemetry protocol buffer objects.
It is imported by the OpenTelemtry Collector InfluxDB receiver
and by the (WIP) Telegraf OpenTelemetry output plugin.
The Jaeger Query Plugin for InfluxDB enables querying traces stored in InfluxDB/IOx via the Jaeger UI.
The golang package common
contains simple utilities and common string values,
used in at least two of the above-mentioned packages.
This package is only intended for use by packages within this repository.
The golang package tests-integration
contains integration tests.
These tests exercise the above packages against OpenTelemetry Collector and Telegraf.
To run these tests:
$ cd tests-integration
$ go test
This is a Docker Compose that generates synthetic signals, for testing. (It is not a pass-fail test.) For more information see tests-synthetic/README.md.