dt-platform-costs

Query and analyze a Dynatrace tenant's ACTUAL billing and usage data with DQL against dt.system.events — DPS consumption breakdown, cost-normalized spend ranking, included volume deduction, chargeback/showback, cost drivers, spending trends, cost investigation, metrics ingest optimization, query cos

By dynatrace · 824 installs

npx skills add dynatrace/dynatrace-for-ai --skill dt-platform-costs

Source repository · Upstream listing

dt platform costs ⛔ FIRST — CHECK SCOPE BEFORE DOING ANYTHING ELSE. This skill only queries and analyzes a tenant's actual consumption data. It does not teach billing concepts. If the user is asking how billing/pricing works, how costs are calculated, what units / normalization weights / the rate card mean , or any conceptual "explain" question about DPS billing — this skill does not answer it. See [Billing Concepts — STOP]( billing concepts stop) and respond with only the prescribed two sentence documentation redirect. Do not explain units, weights, included volume, or methodology, and do not show the Getting Started menu. Continue into the rest of this skill only when the user wants to query or analyze their own tenant's numbers. Query and analyze Dynatrace platform billing and cost data using DQL. All data lives in dt.system.events with event.kind == "BILLING USAGE EVENT" , segmented by event.type (consumption category). Scope boundary : This skill covers Dynatrace platform billing (DPS consumption). For AWS cloud infrastructure costs ingested via FOCUS, use dt biz cloud costs instead. Dynatrace Platform Subscription (DPS) This skill applies exclusively to DPS licensed environments . All billing event types, unit conversions, the public rate card, and cost estimation workflows are DPS specific. NEVER apply this skill's unit conversions or cost estimates to classic license models (host units, DDUs, DEM units, ASUs). If the user mentions classic licensing terms or units, explain that this skill covers DPS only and refer them to https://docs.dynatrace.com/docs/license/monitoring consumption classic for details. Licensing / Entitlement Questions — STOP Triggers: "Am I allowed to use X?", "Is X licensed?", "Is X in my subscription?", "Do I have entitlement for X?" STOP — do not execute any DQL queries. Billing usage events record active consumption only , not subscription entitlements. Absence of billing events means not currently consumed, NOT unlicensed. Do not infer entitlement from usage patterns or their absence. Respond directly without queries and direct to Account Management Subscription Pricing . ❌ Query billing events → no results → conclude "not licensed" — WRONG (absence ≠ no entitlement) ✅ Respond immediately: "Entitlement data is not available via DQL. Check Account Management Subscription Pricing." Billing Concepts — STOP Triggers: "How does billing work?", "How are costs calculated?", "Explain DPS billing", "How is X billed?", "What is the billing model?", "How does DPS pricing work?", "How does Dynatrace charge?", "Explain the rate card" STOP — do not answer from this skill's content. The normalization weights, unit conversion formulas, and lookup values in this skill are DQL generation tools , not user facing billing education. Presenting them as an explanation of DPS billing is wrong — they are internal ranking aids, not contracted rates. Your entire response must be ONLY the two sentences below — nothing else. Do not list capabilities or units, do not describe metering, included volume, or normalization, do not add a "How costs are calculated" section, and do not append the Getting Started menu or a list of example prompts beyond the single one shown: ❌ Explain metering / units / normalization weights, then offer the Getting Started menu — WRONG (that is the exact failure to avoid) ✅ Respond with only : "For how DPS pricing and billing work, see the [Dynatrace Platform Subscription documentation](https://docs.dynatrace.com/docs/manage/subscriptions and licensing/dynatrace platform subscription). If you'd like to analyze your tenant's actual consumption, ask e.g. 'What are my top cost drivers for the last 7 days?' " When to Use This Skill Usage Overview — DPS consumption breakdown by capability, unit conversion, cross capability comparison Cost Estimation — Cost normalized usage comparison and relative spend ranking, daily cost trends, spending spikes Cost Investigation — Step by step drill down into cost drivers, query scan cost attribution, workflow total cost (4 signals) Chargeback / Showback — Cost center and product attribution, team level billing Included Volume — Metrics/Traces Ingest baseline deduction, billed vs. total usage Agent Instructions Intent Mapping User Request Action Reference "how can you help", "what can you do", "where do I start", "help me understand my costs", "what can I analyze", "show me what's possible", "what is this skill", "help", "capabilities", "getting started", "tell me what you can do", "what are your capabilities" Present Getting Started menu — 5 use cases with one suggested prompt each. Do not run any queries yet. [Getting Started]( getting started) "am I allowed to use X", "is X licensed", "is X in my subscription", "entitlement for X", "can I use X from licensing perspective" STOP — do not query. Respond directly: entitlement data is not available via DQL. Direct to Account Management Subscription Pricing. [Entitlement — STOP]( licensing entitlement questions stop) "how does billing work", "how are costs calculated", "explain DPS billing", "how is X billed", "what is the billing model", "how does DPS pricing work", "how does Dynatrace charge", "explain the rate card" STOP — do not answer from skill content. Respond directly: redirect to official documentation. [Billing Concepts — STOP]( billing concepts stop) "usage overview", "usage per capability", "what am I using", "how much usage" Cross capability usage — run the Combined Query; divide billable usage by the unitDivisor for the type's billed field in [billing capabilities.md § Unit Conversion Table](references/billing capabilities.md unit conversion table) to convert to native units. No cost step. billing capabilities.md Cross Capability Usage (4 Queries) "cost drivers", "what costs most", "top spenders", "where is spend going" Cost ranked capability list — resolve price source (Cost Ranking Rules step 0), run Combined Query, sort by cost measure desc. cost estimations.md Estimated Cost by Capability "save money", "reduce costs", "billed costs", "actual bill" Usage with included volume deduction, then cost estimation billing capabilities.md Cross Capability Usage (4 Queries), then cost estimations.md "cost by team", "chargeback", "showback" Cost per cost center — resolve price source (Cost Ranking Rules step 0), then run chargeback query. cost allocation.md "metrics ingest by cost center", "metrics chargeback", "billable data points per team" Metrics Ingest billable volume per cost center (with included volume deduction) cost allocation.md Metrics Ingest — Billable Volume per Cost Center "how much log ingest", "trace volume" (single category) Single category usage query billing event types.md, billing capabilities.md "log import cost", "imported logs cost", "log migration billing", "live vs imported log cost", "cost center for import job" Imported logs use the log ingest event.type — identify them with isNotNull(dt.job.id) . Also worth ruling out for an otherwise unexplained log ingest spike billing event types.md Log Ingest Sources, cost allocation.md Log Import — Cost Center Attribution "cost trend", "spending spike", "budget forecast" Daily cost trend cost estimations.md Daily Cost Trend "compare this week to last", "week over week", "WoW", "MoM", "month over month", "how did costs change", "cost change vs last week", "cost change vs last month", "period comparison", "what grew", "what shrank", "usage trend", "notable changes in usage" Period Comparison — two equal length UTC windows, resolve price source (Cost Ranking Rules step 0), ssort by largest absolute cost delta. cost estimations.md Period Comparison (WoW / MoM) "detector costs", "anomaly detector query cost", "ALERTING pool costs" Cross reference detector query cost query cost attribution.md "workflow cost", "what does this workflow cost", "workflow spending" Composite workflow cost (4 signals) workflow total cost.md "which workflow", "workflow name", "workflow owner", "how often does this workflow run", "workflow frequency" Resolve workflow name/owner and run frequency workflow total cost.md → Cross Event Field Reference + Owner Identification + How Often Did the Workflow Run "what's driving costs", "cost investigation", "cost spike" Step by step cost investigation query cost attribution.md, workflow total cost.md, entity cost drilldown.md "which app", "which host", "which monitor", "drill down", "break down by application/host/cluster" Entity based cost drill down — resolve price source (Cost Ranking Rules step 0), sample first, then run drill down query. entity cost drilldown.md "what's driving RUM/Full Stack/Synthetic/K8s cost" Entity drill down for specific capability entity cost drilldown.md "optimize metrics ingest", "reduce data points", "which metrics cost most", "metric usage", "biggest contributor to metrics ingest" Data point ingest analysis (also filtered by source, cost center, product, or metric key) — present data and optimization levers, then wait for the user to choose — NEVER recommend specific metrics to drop/reduce metrics ingest optimization.md "drop metric", "remove metric from ingestion", "stop ingesting metric" Drop metric strategy; skips Steps 1–2 when the metric key is named directly metrics ingest optimization.md Direct Optimization Request "reduce cardinality", "remove dimension", "drop dimension from metric" Reduce cardinality strategy; skips Steps 1–2 when the metric key is named directly metrics ingest optimization.md Direct Optimization Request "change ingest interval", "reduce collection frequency", "scrape interval" Change ingest interval strategy; skips Steps 1–2 when the metric key is named directly metrics ingest optimization.md Direct Optimization Request "AI costs", "cost of AI agents", "what does AI cost", "AI spending", "AI agent costs", "direct and indirect AI cost", "how much is AI costing", "AI Units cost" Direct AI costs (AI Units / AI Function Standard Call BUEs) + indirect AI costs (Query BUEs with ai generated == true ) billing event types.md Agentic AppEngine, query cost attribution.md Step 2a "query cost by source", "who is scanning most", "cost attribution by app" BUE query cost by source query cost attribution.md Step 1 "expensive dashboards", "dashboard cost ranking", "top dashboards by cost" Dashboard query cost ranking query cost attribution.md Step 1b + Step 2 "included volume", "billed vs total", "baseline usage" Included volume analysis billing capabilities.md Included Volume "hourly billing", "daily billing after deductions", "time granular billed usage" Time bucketed usage with included volume subtracted billing capabilities.md Query 3 (Metrics Ingest — Billable Volume) / Query 4 (Traces Ingest — Billable Volume) Usage vs Cost Distinction Term Behavior "Usage" Usage in native units only — no cost step. Run the Combined Query; divide billable usage by the unitDivisor for the type's billed field in [billing capabilities.md § Unit Conversion Table](references