# dt-dql-essentials

Скилл по синтаксису DQL для Dynatrace: помогает писать, чинить и оптимизировать запросы, чтобы они сканировали меньше данных.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 2800 установок · ★ 167
- Автор: Dynatrace
- Лицензия: Apache-2.0 · policy=mirror · лицензия открытая, файл — в исходнике
- Исходник: https://github.com/Dynatrace/dynatrace-for-ai/tree/HEAD/skills/dt-dql-essentials/SKILL.md
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/skills/dt-dql-essentials

## Что делает

DQL — конвейерный язык: команды соединяются через `|`, и синтаксис у него не как в SQL. Скилл подгружает справочник по этому синтаксису, чтобы агент не выдумывал команды и не путал типы полей. Внутри — индекс команд (`fetch`, `filter`, `summarize`, `makeTimeseries`, `timeseries`, `parse`, `lookup` и другие), таблицы функций по группам, описание типов данных и параметров.

Отдельные файлы-справки раскрывают то, что чаще всего ломает запрос: пространства имён полей и модели данных, выравнивание по времени через `@`, сопоставление строк (`matchesValue`, `matchesPhrase`, `matchesPattern`), работа с массивами и временными рядами, топология Smartscape. Есть и раздел про оптимизацию: фильтровать раньше, ограничивать диапазон времени, выбирать только нужные поля, применять сэмплирование и следить за кардинальностью. Меньше просканированных данных — ниже расход.

Скилл не объясняет готовый запрос и не отвечает на вопросы о продукте. И это не про биллинг: если нужно смотреть, сколько реально стоят запросы тенанта и кто просканировал больше всех, для этого есть `dt-platform-costs`. Здесь правят текст запроса, а не данные о расходах.

## Требования
- Работает с: Dynatrace

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Dynatrace/dynatrace-for-ai --skill dt-dql-essentials -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/dt-dql-essentials/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/dt-dql-essentials/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Dynatrace/dynatrace-for-ai --skill dt-dql-essentials -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/dt-dql-essentials/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Dynatrace/dynatrace-for-ai --skill dt-dql-essentials -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/dt-dql-essentials/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install Dynatrace/dynatrace-for-ai dt-dql-essentials
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/dt-dql-essentials/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add Dynatrace/dynatrace-for-ai --skill dt-dql-essentials -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/Dynatrace/dynatrace-for-ai --path skills/dt-dql-essentials
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/dt-dql-essentials/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add Dynatrace/dynatrace-for-ai --skill dt-dql-essentials -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/Dynatrace/dynatrace-for-ai/tree/HEAD/skills/dt-dql-essentials/SKILL.md

## Когда брать
- Агент пишет DQL как SQL и получает ошибки синтаксиса — скилл подгружает справочник команд и типов заранее.
- Запросы сканируют лишние данные и стоят дороже — раздел оптимизации подсказывает фильтровать раньше и сужать диапазон времени.
- Нужно разобраться с пространствами имён полей, выравниванием по времени или сопоставлением строк — под это есть отдельные файлы-справки.

## Примеры запросов агенту
- Попроси агента написать запрос: «собери DQL-запрос, который достаёт спаны с ошибками за последний час».
- Покажи медленный запрос и скажи: «оптимизируй этот DQL, он сканирует слишком много».
- Спроси про синтаксис: «как в DQL работает выравнивание по времени через @».

## Похожие
- [dtctl](https://affpapa.org/nevibecode/skills/dtctl.md) — скилл · 1300 установок
- [Dynatrace Expert](https://affpapa.org/nevibecode/agents/dynatrace-expert.md) — субагент · ★ 40418
- [mysql](https://affpapa.org/nevibecode/skills/mysql.md) — скилл · 8500 установок
- [mongodb-query-optimizer](https://affpapa.org/nevibecode/skills/mongodb-query-optimizer.md) — скилл · 7000 установок
- [spritecook-workflow-essentials](https://affpapa.org/nevibecode/skills/spritecook-workflow-essentials.md) — скилл · 1000 установок
- [sql-optimization-patterns](https://affpapa.org/nevibecode/skills/sql-optimization-patterns.md) — скилл · 19717 установок

Из того же набора: [dynatrace/dynatrace-for-ai](https://affpapa.org/nevibecode/by/dynatrace/dynatrace-for-ai.md) — 30 карточек

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
