clickhouse-managed-postgres-rca — скилл для Claude Code
Ищет причины просадки производительности ClickHouse-managed Postgres по метрикам Prometheus и Slow Query Patterns, предлагая исправления без их применения.
npx skills add ClickHouse/agent-skills --skill clickhouse-managed-postgres-rca -a claude-codeЧто делает clickhouse-managed-postgres-rca
Скилл запускает анализ сбоев (RCA) для инстансов Postgres под управлением ClickHouse. Поводом для запуска служат высокая нагрузка на процессор или деградация кэша. Скрипт обращается к двум Beta-эндпоинтам на https://api.clickhouse.cloud: забирает текущие метрики Prometheus и статистику частых медленных запросов. При этом агент не имеет доступа к планам EXPLAIN и счётчикам сканирования таблиц. Он опирается только на сигналы ввода-вывода и задержек.
Диагностика состоит из шести последовательных этапов. Сначала агент проверяет схему OpenAPI, чтобы актуализировать имена полей. Затем он запрашивает показатели вроде CacheHitRatio и параллельно подтягивает шаблоны медленных запросов. На этапе триажа данные сопоставляются с эвристиками: последовательное чтение или заторы на записи.
Агент никогда не применяет исправления сам. Он не выполняет DDL и не прерывает сессии через pg_terminate_backend. Для работы обязательно нужны идентификаторы organizationId и serviceId, а также ключи доступа к API, без которых запросы отклоняются.
Какие задачи решает
- локализовать причины высокой нагрузки на процессор в управляемом Postgres
- найти неоптимальные шаблоны запросов через Slow Query Patterns API
- выявить деградацию
CacheHitRatioи рост активных соединений по Prometheus - классифицировать узкие места между последовательным сканированием и блокировками
Примеры запросов агенту
- Проведи диагностику инстанса Postgres с serviceId
<service-id>в организации<org-id>: резко вырос CPU - ClickHouse-managed Postgres работает медленно, проанализируй метрики Prometheus и медленные запросы
- Найди причину падения производительности базы данных ClickHouse Postgres
Как установить clickhouse-managed-postgres-rca
1Через Skills CLI (Vercel)
npx skills add ClickHouse/agent-skills --skill clickhouse-managed-postgres-rca -a claude-code2Вручную: положить файлы
~/.claude/skills/clickhouse-managed-postgres-rca/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/clickhouse-managed-postgres-rca/
1Через Skills CLI (Vercel)
npx skills add ClickHouse/agent-skills --skill clickhouse-managed-postgres-rca -a codex2Вручную: положить файлы
.agents/skills/clickhouse-managed-postgres-rca/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add ClickHouse/agent-skills --skill clickhouse-managed-postgres-rca -a cursor2Вручную: положить файлы
.cursor/skills/clickhouse-managed-postgres-rca/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install ClickHouse/agent-skills clickhouse-managed-postgres-rca2Вручную: положить файлы
.github/skills/clickhouse-managed-postgres-rca/SKILL.md1Через Skills CLI (Vercel)
npx skills add ClickHouse/agent-skills --skill clickhouse-managed-postgres-rca -a gemini-cli2Командой платформы
gemini skills install https://github.com/ClickHouse/agent-skills --path skills/clickhouse-managed-postgres-rcaВручную: положить файлы
.devin/skills/clickhouse-managed-postgres-rca/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add ClickHouse/agent-skills --skill clickhouse-managed-postgres-rca -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора8
Похожие
Рядом в теме «Данные и базы»
Все скиллы по теме «Данные и базы» →Вопросы о clickhouse-managed-postgres-rca
Как установить clickhouse-managed-postgres-rca в Claude Code?
Выполните команду npx skills add ClickHouse/agent-skills --skill clickhouse-managed-postgres-rca -a claude-code. Навык сохранится в файле ~/.claude/skills/clickhouse-managed-postgres-rca/SKILL.md.
Что делает скилл clickhouse-managed-postgres-rca?
Он расследует инциденты производительности на базах Postgres под управлением ClickHouse. Скилл опрашивает API метрик и медленных запросов, выявляет источник задержек и предлагает шаги для решения.
Применяет ли скилл исправления или DDL автоматически?
Нет, скилл работает исключительно в режиме рекомендаций. Он не выполняет DDL и никогда не вызывает команды завершения сессий вроде pg_terminate_backend.
Исходный текст
SKILL.md · Apache-2.0
---
name: clickhouse-managed-postgres-rca
description: MUST USE when investigating performance issues on a ClickHouse-managed Postgres instance. Provides an evidence-based RCA workflow that scrapes the Prometheus endpoint for system signal, pulls per-digest evidence from the Slow Query Patterns API, and recommends (does not apply) a fix.
license: Apache-2.0
metadata:
author: ClickHouse Inc
version: "0.1.0"
---
# ClickHouse Managed Postgres RCA
## When to use
Trigger whenever a user reports slowness, high CPU, low
throughput, cache thrash, or any unexplained pain on a
ClickHouse-managed Postgres instance.
## What you have access to
Two APIs on `https://api.clickhouse.cloud` (HTTP Basic auth
using a ClickHouse Cloud API key/secret pair):
- **Prometheus metrics** — operation `postgresInstancePrometheusGet`
under the Prometheus tag. Returns Prometheus exposition format.
System and workload metrics for one Postgres service.
- **Slow Query Patterns** — operation `slowQueryPatternsGetList`
under the Postgres tag. Returns per-digest latency, IO, and
call statistics for normalized query patterns. **Beta.**
Both endpoints require an `organizationId` and a `serviceId` as
path parameters. The user must supply both, plus the API
key/secret pair.
## What you do NOT have
- Query plans / EXPLAIN output.
- Per-table scan-type counters (`seq_scan` / `idx_scan`).
- Autovacuum or last-ANALYZE timestamps.
Reason from IO and timing signals, not from a plan tree.
## Workflow
Six steps, in order. Do not skip ahead.
Steps 2 and 3 only share auth — no data dependency between
them. Run them in parallel (background curls, `&` + `wait`) to
cut wall time from sequential ~2s to ~1s.
### 1. Discover the live API shape
These endpoints are Beta — paths, params, and JSON field names
can shift. Follow `rules/openapi-discovery.md` to:
1. Fetch the OpenAPI spec from `https://api.clickhouse.cloud/v1`.
2. Locate the two operations by `operationId`:
- `postgresInstancePrometheusGet` (Prometheus tag)
- `slowQueryPatternsGetList` (Postgres tag)
3. Resolve their path templates, required query parameters,
and (for the slow-query endpoint) the response schema.
4. Build a session-scoped role map from the schema property
descriptions: `{ semantic role → actual field name }`.
Use the resolved names in every subsequent request and citation.
Never hardcode field names from memory.
### 2. Scrape Prom once for system gauges
Follow `rules/prometheus-scrape.md`. **One scrape, no wait.**
You're after gauges (current values) that don't need a delta:
`CacheHitRatio`, `ActiveConnections`, `MemoryUsedPercent`,
`FilesystemUsedPercent`.
A `CacheHitRatio` well below ~95% on a workload that should
fit in cache is a real signal on its own. Climbing
`ActiveConnections` toward the pool ceiling is a real signal
on its own. These don't need rate-of-change.
A second scrape for counter deltas is **opt-in**, used only
when Step 4 triage points at write-congestion (where deadlock
and rollback *rates* matter and the Slow Query Patterns API
can't substitute). For the read-path case (the most common
RCA shape) the single scrape is enough.
### 3. Pull top slow query patterns
Request the slow query patterns. Follow
`rules/slow-query-patterns-fields.md` for the fields that
matter and how to read them. This is the primary diagnostic —
it returns per-pattern accumulated totals (call count, runtime,
blocks, rows) over the window you request, which is the
"rate-of-change" data you'd otherwise derive from two Prom
scrapes — but per query and without waiting.
If no patterns return a meaningful `totalDurationUs`, the
report may be overstated or the issue isn't query-shaped.
Stop and tell the user what you looked at.
### 4. Triage: pick the right heuristic
Follow `rules/triage.md`. Match the combined Prom + slow-query
signal to one of the heuristic shapes. Each shape points to a
specific heuristic file:
- `rules/heuristic-full-scan.md` — read-path full scan.
- `rules/heuristic-hot-loop.md` — N+1 / hot loop from the app.
- `rules/heuristic-write-congestion.md` — deadlocks, slow
writes, high rollback rate.
If the signal does not match any shape cleanly, do not invent
a hypothesis. Surface the top patterns and ask the user which
workload they recognize. New heuristics are welcome as PRs.
### 5. Reason, then recommend
Use the format in `rules/output-template.md`. Always include:
symptom, evidence, hypothesis (noting any alternative cause
you cannot rule out from this surface alone), short-term fix,
and long-term follow-ups.
### 6. Do not apply the fix
Follow `rules/recommend-only.md`. Never run DDL. Never call
`pg_cancel_backend` or `pg_terminate_backend`. Write the
recommendation, explain why, and let the human apply it.
## Full Compiled Document
For the complete guide with every rule expanded in a single
context load: `AGENTS.md`.
© ClickHouse Inc · Apache-2.0 · ClickHouse/agent-skills