Elastic

Elastic Observability is a search-powered analytics platform that unifies logs, metrics, traces, and uptime data for actionable insights. This guide explains how to integrate ThousandEyes metrics with Elastic using OpenTelemetry.

For more information about sending metrics to Elastic using OpenTelemetry, see Elastic Observability: Upstream OpenTelemetry Collectors and language SDKs.

Step 1: Generate API Key

To send data to Elastic, you need an API key. Follow these steps to create an Elastic API Key.

  1. In your Elastic dashboard, go to Cloud > Projects.

  2. Select a project.

  3. In the project dashboard, under API keys, click Manage project API keys.

  4. Click +Create API key.

  5. Enter a Name.

  6. Click Create API key to create your API key.

    Copy the API key to use it to send telemetry data to Elastic.

Step 2: Create an Integration

Create an Integration Using the ThousandEyes UI

  1. Log in to your account on the ThousandEyes platform and go to Manage > Integration 1.0.

  2. Click +New Integration and select OpenTelemetry Integration.

  3. Enter a Name for the integration.

  4. Set the Target to GRPC.

  5. For the Endpoint URL, enter the APM Endpoint URL for your Elastic cloud project. You can find this in your Elastic project dashboard by clicking on view connection details.

  6. For Preset Configurations, select Elastic.

  7. For Auth Type, select Custom.

  8. Add the following Custom Headers: "Authorization": "ApiKey {TOKEN}"

    • Use your API key from step 1. Make sure to prefix it with ApiKey. For example: ApiKey {TOKEN}.

  9. For the OpenTelemetry Signal, select Metric.

  10. For the Data Model Version, select v2.

  11. Select a test. For more information on creating a test, see General Setup Instructions.

  12. Click Save to complete the integration setup.

You have now successfully integrated your ThousandEyes data with Elastic.

Manage Integrations in the UI

For more information on managing OpenTelemetry integrations, including listing, editing, and deleting integrations, see Manage Integrations Using the UI - Integrations 1.0.

Create an Integration Using the ThousandEyes API

For a programmatic integration, use the following API command:

curl -v -XPOST https://api.thousandeyes.com/v7/stream -H "Content-Type: application/json" -H "Authorization: Bearer $BEARER_TOKEN" -d '{
  "type": "opentelemetry",
  "testMatch": [{
    "id": "281474976717575",
    "domain": "cea"
  }],
  "endpointType": "grpc",
  "streamEndpointUrl": "{STREAM_ENDPOINT_URL}",
  "customHeaders": {
    "Authorization": "ApiKey {TOKEN}"
  }
}'

Replace {TOKEN} and {STREAM_ENDPOINT_URL} with the correct values for your instance.

ThousandEyes Dashboard in Elastic

ThousandEyes Dashboard in Elastic

Last updated