数据与研究

dt-migration

dynatrace/dynat…e-for-ai

Migrate Dynatrace classic and Gen2 entity-based DQL to Smartscape equivalents. Covers three scenarios. (1) mass data queries filtered by classic entity conditions — migrate to direct dimension filters first, Smartscape only as fallback; (2) mass data queries using entity subqueries for filtering — same dimension-first strategy; (3) pure entity list queries — migrate fetch dt.entity.* to smartscapeNodes. Also handles entityName, entityAttr, classicEntitySelector, and classic relationship patterns.

  • 2477 次安装
  • 170 星标
  • 收录于

安装命令

npx skills add https://github.com/dynatrace/dynatrace-for-ai --skill dt-migration

SKILL.md

Smartscape Migration Skill

This skill migrates Dynatrace classic and Gen2 entity-based DQL queries and query patterns to Smartscape-based equivalents.

Load the dt-dql-essentials skill before writing final DQL so the translated query also follows current DQL syntax rules.

This skill focuses on Smartscape-oriented DQL migration only. It does not cover asset-level migration workflows.

Query Purpose Classification

Start here. The correct migration strategy depends on what the query is actually trying to do — not just which classic constructs it uses.

There are three distinct situations:

# Situation Classic anti-pattern Migration strategy
1 Mass data query filtered by entity conditions classicEntitySelector(...) inline in filter: of a timeseries, logs, or metrics query Resolve entity conditions to raw data dimensions first. Smartscape is a fallback, not the default.
2 Mass data query using entity subquery for filtering fetch dt.entity.* inside in [...], lookup [...], or join [...] to filter the outer mass data query Same dimension-first strategy. Rewrite as raw dimension filter or in [smartscapeNodes ...] subquery.
3 Pure entity list query fetch dt.entity.* used standalone or as the primary result source smartscapeNodes is the only valid path. No raw dimension alternative exists.