dynatrace

Guides programmatic Dynatrace work across API auth, DQL queries, OTLP ingest, AWS connector, and monitoring-as-code.

Updated Apr 11, 2026
One-click install
npx skills add https://github.com/lurodrisilva/personal-skills --skill dynatrace-lurodrisilva
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: dynatrace
Source: https://github.com/lurodrisilva/personal-skills/tree/main/platform-engineering/dynatrace
Command: npx skills add https://github.com/lurodrisilva/personal-skills --skill dynatrace-lurodrisilva

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Dynatrace exposes two coexisting API planes (Classic .live with Api-Token vs Platform/Grail .apps with Bearer tokens), and using the wrong plane or credential causes 401/403 failures no matter how correct the request is. This Skill encodes the plane-and-auth map plus the operational rules for querying, ingesting, and automating Dynatrace so engineers stop tripping over token types, OTLP format constraints, and deprecated surfaces. ## Core Features & Use Cases - Plane & Auth Map: Maps every endpoint family to its correct host, path root, and credential (dt0c01 API token, dt0s16 platform token, dt0s02 OAuth client), including least-scope token guidance and nextPageKey pagination rules. - DQL on Grail: Covers piped DQL syntax (fetch | filter | summarize | sort), timeseries vs makeTimeseries, DPL parsing, and the async query:execute/query:poll Grail API. - OTLP Ingest & AWS Connector: Documents OTLP/HTTP protobuf-only ingest with mandatory delta temporality, the Dynatrace OpenTelemetry Collector distribution, and the agentless role-based da-aws AWS connector with ExternalId trust. - Monitoring-as-Code & MCP: Guides Terraform provider and Monaco workflows for Settings 2.0 objects, plus the agent-facing Dynatrace MCP server surface (hosted gateway vs OSS local, tool set, Grail cost warnings). - Use Case: You need to ship OpenTelemetry traces from a Kubernetes service to Dynatrace and then alert on error rates. The Skill tells you to export via OTLP/HTTP to .live with an Api-Token, query with DQL on .apps using a platform token, and codify the SLO in Terraform. ## Quick Start Ask the AI to write a DQL query that fetches error logs from Grail and summarizes them by service, using the correct platform-plane Bearer authentication.

Frequently Asked Questions about dynatrace

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I authenticate Dynatrace API requests?▼

Dynatrace authentication depends on the plane: Classic endpoints on `{env}.live.dynatrace.com/api/v2` use an `Api-Token dt0c01...` header, while Platform/Grail endpoints on `{env}.apps.dynatrace.com/platform` use a `Bearer` platform token (`dt0s16`) or OAuth client (`dt0s02`). A platform token will not work on classic API calls and vice-versa.

How do I send OpenTelemetry data to Dynatrace?▼

Send OTLP to `https://{env}.live.dynatrace.com/api/v2/otlp/v1/{traces,metrics,logs}` using OTLP/HTTP with binary protobuf only — gRPC and JSON are not supported. Metrics must use delta temporality, and each signal needs its matching ingest scope (`openTelemetryTrace.ingest`, `metrics.ingest`, `logs.ingest`).

What is the difference between DQL timeseries and makeTimeseries?▼

`timeseries` is a leading data-loading command for querying metrics directly into charting-ready series, while `makeTimeseries` converts non-metric records like logs or events into series by time-bucketing after a `fetch`. Never pipe `timeseries` into `makeTimeseries`.

Why does my Dynatrace API call return 401 or 403?▼

Most 401/403 errors come from using the wrong plane or credential — for example a platform token on a classic `/api/v2` call. Check the plane-and-auth map: `.live` hosts need `Api-Token`, `.apps` platform paths need `Bearer`, and verify the token carries the required scope.

Does Dynatrace still support ActiveGate-based AWS monitoring?▼

Legacy ActiveGate and static-key AWS monitoring is deprecated as of 2026-03-31. Use the modern agentless `da-aws` connector, which uses a cross-account IAM role trusted via an ExternalId and is configured through the Extensions 2.0 monitoring-configurations API.

Should I use Terraform or Monaco for Dynatrace configuration as code?▼

Use the `dynatrace-oss/dynatrace` Terraform provider if you are already Terraform-centric and want drift detection via state; use Monaco if you want a Dynatrace-native CLI with strong multi-environment templating and no state dependency. Both manage Settings 2.0 objects, dashboards, SLOs, and alerting profiles.