Skip to Content

Dash0

Artillery integrates with Dash0  using OpenTelemetry protocol to send both metrics and traces.

Quick Start

plugins: publish-metrics: - type: 'open-telemetry' serviceName: 'my-service' metrics: endpoint: https://ingress.eu-west-1.aws.dash0.com/v1/metrics headers: Authorization: 'Bearer {{ $env.DASH0_AUTH_TOKEN }}'

Requirements

Configuration

Full Configuration Example

plugins: publish-metrics: - type: 'open-telemetry' serviceName: 'load-test-service' metrics: exporter: 'otlp-http' endpoint: https://ingress.eu-west-1.aws.dash0.com/v1/metrics headers: Authorization: 'Bearer {{ $env.DASH0_AUTH_TOKEN }}' traces: exporter: 'otlp-http' endpoint: https://ingress.eu-west-1.aws.dash0.com/v1/traces headers: Authorization: 'Bearer {{ $env.DASH0_AUTH_TOKEN }}'

Regional Endpoints

You may need to adjust the endpoint URL to match the region where your Dash0 account is hosted. Common regions include:

  • EU West 1: https://ingress.eu-west-1.aws.dash0.com
  • US East 1: https://ingress.us-east-1.aws.dash0.com
  • Other regions: Check your Dash0 dashboard for the correct endpoint

Examples

Basic Metrics Configuration

plugins: publish-metrics: - type: 'open-telemetry' serviceName: 'api-gateway' metrics: exporter: 'otlp-http' endpoint: https://ingress.eu-west-1.aws.dash0.com/v1/metrics headers: Authorization: 'Bearer {{ $env.DASH0_AUTH_TOKEN }}' attributes: environment: production test.type: performance

Advanced Configuration with Traces

plugins: publish-metrics: - type: 'open-telemetry' serviceName: 'checkout-service' resourceAttributes: service.version: '1.5.0' deployment.environment: staging cloud.provider: aws cloud.region: eu-west-1 metrics: exporter: 'otlp-http' endpoint: https://ingress.eu-west-1.aws.dash0.com/v1/metrics headers: Authorization: 'Bearer {{ $env.DASH0_AUTH_TOKEN }}' attributes: test.scenario: peak-load traces: exporter: 'otlp-http' endpoint: https://ingress.eu-west-1.aws.dash0.com/v1/traces headers: Authorization: 'Bearer {{ $env.DASH0_AUTH_TOKEN }}' sampleRate: 0.1 smartSampling: thresholds: firstByte: 500 total: 2000

Getting Your Auth Token

  1. Log in to your Dash0 account
  2. Navigate to Settings → Auth Tokens
  3. Create a new auth token with appropriate permissions
  4. Copy the token and store it securely (e.g., in environment variables)

Best Practices

  1. Use environment variables: Store your auth token in environment variables rather than hardcoding
  2. Set appropriate sampling: For high-volume tests, use sampling to control costs
  3. Add meaningful attributes: Include attributes that help you filter and analyze data
  4. Use resource attributes: Set service version and environment for better organization

Debugging

Set DEBUG=plugin:publish-metrics:open-telemetry when running your tests:

DEBUG=plugin:publish-metrics:open-telemetry artillery run my-script.yaml

Reference

Please refer to the Dash0 docs for details on where to find your endpoint URL:

https://www.dash0.com/documentation/dash0/get-started/sending-data-to-dash0 

Last updated on