render-monitor — скилл для Claude Code: мониторинг сервисов Render
Скилл для проверки здоровья сервисов Render: статус, метрики, логи, деплои и базы данных прямо из агента.
npx skills add render-oss/skills --skill render-monitor -a claude-codeЧто делает render-monitor
Скилл даёт агенту набор готовых вызовов к Render: список сервисов, последние деплои, логи с фильтром по уровню и коду ответа, метрики CPU, памяти, HTTP-латентности и числа запросов. Есть отдельный блок по базам: статус PostgreSQL, число активных соединений, произвольные SQL-запросы и поиск медленных запросов через pg_stat_statements. Для key-value хранилищ — list_key_value и get_key_value.
Внутри — пять шагов быстрой проверки здоровья: статус сервиса, последний деплой, ошибки в логах, расход ресурсов и p95-латентность. К ним приложены таблицы порогов: CPU ниже 70% считается нормой, 70–85% — предупреждение, выше 85% — проблема; по памяти границы 80% и 90%. Для латентности своя шкала от «отлично» до «проблема». Скилл ссылается на references/render-access.md, references/deployments.md, references/metrics-guide.md и references/compute-plans.md — перед чтением состояния сервиса нужно пройти по инструкции доступа и убедиться, что выбран нужный workspace.
Метрики и запросы к базе требуют MCP. Через CLI доступны только статус сервиса и логи, так что без MCP половина скилла не заработает. Если MCP нет, остаются команды вида render services -o json, render logs -r <service-id> --tail -o text и render psql <database-id>.
Какие задачи решает
- проверить, поднялся ли сервис после деплоя
- найти ошибки 500, 502 и 503 в логах
- посмотреть p95-латентность по конкретному эндпоинту
- оценить расход CPU и памяти относительно лимитов
- найти медленные SQL-запросы в PostgreSQL
Примеры запросов агенту
- проверь здоровье сервиса <service-id> в Render
- покажи последние ошибки в логах <service-id>
- какая p95-латентность у /api/users за последний час
Как установить render-monitor
1Через Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-monitor -a claude-code2Вручную: положить файлы
~/.claude/skills/render-monitor/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/render-monitor/
1Через Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-monitor -a codex2Вручную: положить файлы
.agents/skills/render-monitor/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-monitor -a cursor2Вручную: положить файлы
.cursor/skills/render-monitor/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install render-oss/skills render-monitor2Вручную: положить файлы
.github/skills/render-monitor/SKILL.md1Через Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-monitor -a gemini-cli2Командой платформы
gemini skills install https://github.com/render-oss/skills --path skills/render-monitorВручную: положить файлы
.devin/skills/render-monitor/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-monitor -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о render-monitor
Как установить render-monitor в Claude?
Выполните npx skills add render-oss/skills --skill render-monitor -a claude-code. Файл скилла появится по пути ~/.claude/skills/render-monitor/SKILL.md.
Что делает render-monitor?
Проверяет состояние сервисов Render: статус, деплои, логи, метрики CPU и памяти, HTTP-латентность, а также здоровье PostgreSQL и key-value хранилищ.
Что нужно для работы render-monitor?
Доступ к Render через MCP-инструменты или CLI. Метрики и запросы к базе данных работают только через MCP, CLI отдаёт статус сервиса и логи.
Исходный текст
SKILL.md · MIT
--- name: render-monitor description: Monitor Render services in real-time. Check health, performance metrics, logs, and resource usage. Use when users want to check service status, view metrics, monitor performance, or verify deployments are healthy. license: MIT compatibility: Requires Render MCP tools or CLI metadata: author: Render version: "1.0.0" category: monitoring --- # Monitor Render Services Real-time monitoring of Render services including health checks, performance metrics, and logs. ## When to Use This Skill Activate this skill when users want to: - Check if services are healthy - View performance metrics - Monitor logs - Verify a deployment is working - Investigate slow performance - Check database health ## Render Access Before reading service state, logs, metrics, or database health, follow `references/render-access.md` to establish access and verify the intended workspace. Prefer MCP when available; the CLI can provide service status and logs, while metrics and database queries require MCP. Before interpreting deploy or health-check state, read `references/deployments.md`. --- ## Quick Health Check Run these 5 checks to assess service health: ``` # 1. Check service status list_services() # 2. Check latest deploy list_deploys(serviceId: "<service-id>", limit: 1) # 3. Check for errors list_logs(resource: ["<service-id>"], level: ["error"], limit: 20) # 4. Check resource usage get_metrics(resourceId: "<service-id>", metricTypes: ["cpu_usage", "memory_usage"]) # 5. Check latency get_metrics(resourceId: "<service-id>", metricTypes: ["http_latency"], httpLatencyQuantile: 0.95) ``` --- ## Service Health ### Check Status ``` list_services() ``` ``` get_service(serviceId: "<id>") ``` ### Check Deployments ``` list_deploys(serviceId: "<service-id>", limit: 5) ``` Follow `references/deployments.md` to interpret asynchronous and terminal states, identify the specific deploy, and verify the workload after it becomes live. ### Check Errors ``` list_logs(resource: ["<service-id>"], level: ["error"], limit: 50) ``` ``` list_logs(resource: ["<service-id>"], statusCode: ["500", "502", "503"], limit: 50) ``` --- ## Performance Metrics ### CPU & Memory ``` get_metrics( resourceId: "<service-id>", metricTypes: ["cpu_usage", "memory_usage", "cpu_limit", "memory_limit"] ) ``` | Metric | Healthy | Warning | Critical | |--------|---------|---------|----------| | CPU | <70% | 70-85% | >85% | | Memory | <80% | 80-90% | >90% | ### HTTP Latency ``` get_metrics( resourceId: "<service-id>", metricTypes: ["http_latency"], httpLatencyQuantile: 0.95 ) ``` | p95 Latency | Status | |-------------|--------| | <200ms | Excellent | | 200-500ms | Good | | 500ms-1s | Concerning | | >1s | Problem | ### Request Count ``` get_metrics( resourceId: "<service-id>", metricTypes: ["http_request_count"] ) ``` ### Filter by Endpoint ``` get_metrics( resourceId: "<service-id>", metricTypes: ["http_latency"], httpPath: "/api/users" ) ``` Detailed metrics guide: [references/metrics-guide.md](references/metrics-guide.md) --- ## Database Monitoring ### PostgreSQL Status ``` list_postgres_instances() get_postgres(postgresId: "<postgres-id>") ``` ### Connection Count ``` get_metrics(resourceId: "<postgres-id>", metricTypes: ["active_connections"]) ``` ### Query Database ``` query_render_postgres( postgresId: "<postgres-id>", sql: "SELECT state, count(*) FROM pg_stat_activity GROUP BY state" ) ``` ### Find Slow Queries ``` query_render_postgres( postgresId: "<postgres-id>", sql: "SELECT query, mean_exec_time FROM pg_stat_statements ORDER BY mean_exec_time DESC LIMIT 10" ) ``` ### Key-Value Store ``` list_key_value() get_key_value(keyValueId: "<kv-id>") ``` --- ## Log Monitoring ### Recent Logs ``` list_logs(resource: ["<service-id>"], limit: 100) ``` ### Error Logs ``` list_logs(resource: ["<service-id>"], level: ["error"], limit: 50) ``` ### Search Logs ``` list_logs(resource: ["<service-id>"], text: ["timeout", "error"], limit: 50) ``` ### Filter by Time ``` list_logs( resource: ["<service-id>"], startTime: "2024-01-15T10:00:00Z", endTime: "2024-01-15T11:00:00Z" ) ``` ### Stream Logs (CLI) ```bash render logs -r <service-id> --tail -o text ``` --- ## Quick Reference ### MCP Tools ``` # Services list_services() get_service(serviceId: "<id>") list_deploys(serviceId: "<id>", limit: 5) # Logs list_logs(resource: ["<id>"], level: ["error"], limit: 100) list_logs(resource: ["<id>"], text: ["search"], limit: 50) # Metrics get_metrics(resourceId: "<id>", metricTypes: ["cpu_usage", "memory_usage"]) get_metrics(resourceId: "<id>", metricTypes: ["http_latency"], httpLatencyQuantile: 0.95) get_metrics(resourceId: "<id>", metricTypes: ["http_request_count"]) # Database list_postgres_instances() get_postgres(postgresId: "<id>") query_render_postgres(postgresId: "<id>", sql: "SELECT ...") get_metrics(resourceId: "<postgres-id>", metricTypes: ["active_connections"]) # Key-Value list_key_value() get_key_value(keyValueId: "<id>") ``` ### CLI Commands (Fallback) Use these if MCP tools are unavailable: ```bash # Service status render services -o json render services instances <service-id> # Deployments render deploys list <service-id> -o json # Logs render logs -r <service-id> --tail -o text # Stream logs render logs -r <service-id> --level error -o json # Error logs render logs -r <service-id> --type deploy -o json # Build logs # Database render psql <database-id> # Connect to PostgreSQL # SSH for live debugging render ssh <service-id> ``` ### Healthy Service Indicators | Indicator | Healthy | Warning | Critical | |-----------|---------|---------|----------| | Error Rate | <0.1% | 0.1-1% | >1% | | p95 Latency | <500ms | 500ms-2s | >2s | | CPU Usage | <70% | 70-90% | >90% | | Memory Usage | <80% | 80-95% | >95% | --- ## References - **Render access:** [references/render-access.md](references/render-access.md) - **Compute plans:** [references/compute-plans.md](references/compute-plans.md) - **Deployments:** [references/deployments.md](references/deployments.md) - **Metrics guide:** [references/metrics-guide.md](references/metrics-guide.md) ## Related Skills - **render-deploy** — Deploy new applications to Render - **render-debug** — Diagnose and fix deployment failures - **render-mcp** — MCP server setup and capability discovery <!-- shared:documentation-retrieval --> ## Current documentation retrieval Whenever this skill directs you to consult current Render documentation: 1. Retrieve the linked Markdown document directly with an available URL-fetching tool or HTTP client, such as `curl`. Do not substitute web-search summaries for the document. 2. Confirm that retrieval succeeded and returned the expected document, then read its contents. Saving a file or printing its path is not sufficient. 3. If the request fails or your tool cannot read the Markdown response, open and read the linked HTML version instead. 4. If neither version can be retrieved, disclose that the current reference is unavailable and follow any topic-specific fallback in the skill. Use bundled guidance only for stable constraints, and do not guess at changeable platform details. When a task requires multiple references, apply this workflow to each one and distinguish the documents you verified from those that remain unavailable. <!-- /shared:documentation-retrieval -->
© Render · MIT · render-oss/skills