ThousandEyes for OpenTelemetry
OpenTelemetry (OTel) is an open-source project that provides a vendor-neutral, standardized way to instrument, generate, collect, and export telemetry data for cloud-native applications. It helps developers easily incorporate observability into their services, enabling better monitoring, debugging, and optimization of their applications.
ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry.
ThousandEyes for OTel is made up of the following components:
Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations.
A set of streaming pipelines called collectors that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on you configure via the public APIs.
Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration.
Support
ThousandEyes for OpenTelemetry currently supports the following test types and OpenTelemetry signals and metrics:
Test type
Metrics
Signals
Agent-to-server
Latency, loss, and jitter
metrics
Agent-to-agent
Latency, loss, and jitter
metrics
BGP
Path changes, reachability, and updates
metrics
HTTP server
Availability, response time, and throughput
metrics
Web transaction
Page load time, transaction time, completion, and errors
metrics
, traces
Page load
Page load time and completion
metrics
, traces
FTP server
Availability, response time, and throughput
metrics
DNS server
Availability and resolution time
metrics
DNS Domain Trace
Availability and final query time
metrics
DNS DNSSEC Trace
Validity
metrics
RTP stream
MOS, loss, discards, and latency
metrics
SIP server
Availability, response time, and total time
metrics
Endpoint Agent network
Loss, latency, and jitter
metrics
Endpoint Agent HTTP
Availability, response time, and throughput
metrics
API
Time and completion
metrics
For more information about the supported test types, metrics and attributes, see ThousandEyes for OpenTelemetry Metrics.
BGP metrics are event-driven, which means that they are streamed only when there is an announcement or withdrawal of a prefix by a monitor.
Test Layers
ThousandEyes tests are composed of multiple layers (see Test Type Layers and Units for more details). When creating a test, multiple test types may be applied, depending on the configuration. For example, an HTTP server test includes metrics from the Web, Network (agent-to-server test), and BGP layers by default.
ThousandEyes for OpenTelemetry captures and sends metrics from all enabled test layers. Below is an example breakdown of the metrics for an HTTP server test:
Web layer: Availability, Response Time, Throughput
Network layer: Latency, Packet Loss, Jitter
BGP layer: Path Changes, Reachability, Updates
Layer Configuration
You can customize which layers are active for different test types by modifying the API request body. For instance:
To disable the BGP layer, set
"bgpMeasurements": false
in the REST API request body.To disable the Network layer, set
"networkMeasurements": false
in the REST API request body.
Example Test Types and Layer Configuration
agent-to-server
- Create Agent to Server testDisable BGP layer:
"bgpMeasurements": false
agent-to-agent
- Create Agent to Agent testDisable BGP layer:
"bgpMeasurements": false
dns-server
- Create DNS Server testDisable BGP layer:
"bgpMeasurements": false
http-server
- Create HTTP Server testDisable BGP layer:
"bgpMeasurements": false
Disable Network layer:
"networkMeasurements": false
page-load
- Create Page Load testDisable BGP layer:
"bgpMeasurements": false
Disable Network layer:
"networkMeasurements": false
web-transaction
- Create Web Transactions testDisable BGP layer:
"bgpMeasurements": false
Disable Network layer:
"networkMeasurements": false
api
- Create API testDisable BGP layer:
"bgpMeasurements": false
Disable Network layer:
"networkMeasurements": false
ftp
- Create FTP Server testDisable BGP layer:
"bgpMeasurements": false
Disable Network layer:
"networkMeasurements": false
sip
- Create SIP Server testDisable BGP layer:
"bgpMeasurements": false
Disable Network layer:
"networkMeasurements": false
rtp
- Create RTP testDisable BGP layer:
"bgpMeasurements": false
Disable Network layer:
"networkMeasurements": false
Limitations
Maximum 5 streams per account group and data model version.
Shared tests are not supported.
Traces are supported with data model v2 only.
Last updated