troubleshooting-astro-deployments — скилл для Claude Code: разбор
Скилл ведёт агента по шагам диагностики продакшн-развёртываний Astronomer через Astro CLI: логи, ошибки, переменные окружения.
npx skills add astronomer/agents --skill troubleshooting-astro-deployments -a claude-codeЧто делает troubleshooting-astro-deployments
Скилл описывает порядок разбора проблем на продакшн-развёртываниях Astronomer. Агент начинает с astro deployment list и astro deployment inspect <DEPLOYMENT_ID>, потом смотрит ошибки в логах. Дальше идёт по компонентам: scheduler, workers, webserver, triggerer.
Логи фильтруются по уровню (--error, --warn, --info) и по ключевому слову. Важная деталь: флаги компонента и уровня в одной команде не совмещаются, поэтому за раз берут что-то одно. Счётчик записей задаётся через -c, по умолчанию 500.
Отдельный блок — переменные окружения: список, создание, обновление и удаление через astro deployment variable. Секреты создаются с флагом --secret и маскируются в интерфейсе и логах. Правки переменных не требуют повторного деплоя. Скилл заточен под Astro CLI, так что без него шаги не выполнить.
Какие задачи решает
- найти, какой DAG падает снова и снова
- отфильтровать ошибки импорта в логах scheduler
- проверить, хватает ли воркерам памяти и CPU
- посмотреть, какие переменные окружения заданы в развёртывании
- создать секрет, который не попадёт в логи открытым текстом
Примеры запросов агенту
- посмотри ошибки в продакшн-развёртывании Astronomer, начни с логов
- найди в логах scheduler ошибки импорта DAG
- проверь переменные окружения развёртывания и покажи список
Как установить troubleshooting-astro-deployments
1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill troubleshooting-astro-deployments -a claude-code2Вручную: положить файлы
~/.claude/skills/troubleshooting-astro-deployments/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/troubleshooting-astro-deployments/
1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill troubleshooting-astro-deployments -a codex2Вручную: положить файлы
.agents/skills/troubleshooting-astro-deployments/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill troubleshooting-astro-deployments -a cursor2Вручную: положить файлы
.cursor/skills/troubleshooting-astro-deployments/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install astronomer/agents troubleshooting-astro-deployments2Вручную: положить файлы
.github/skills/troubleshooting-astro-deployments/SKILL.md1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill troubleshooting-astro-deployments -a gemini-cli2Командой платформы
gemini skills install https://github.com/astronomer/agents --path skills/troubleshooting-astro-deploymentsВручную: положить файлы
.devin/skills/troubleshooting-astro-deployments/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill troubleshooting-astro-deployments -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о troubleshooting-astro-deployments
Как установить troubleshooting-astro-deployments в Claude?
Выполните npx skills add astronomer/agents --skill troubleshooting-astro-deployments -a claude-code. После этого файл скилла лежит в ~/.claude/skills/troubleshooting-astro-deployments/SKILL.md.
Что делает troubleshooting-astro-deployments?
Проводит агента по диагностике продакшн-развёртываний Astronomer: список и осмотр развёртываний, логи по компонентам и уровням, поиск по ключевым словам, работа с переменными окружения.
Чем этот скилл отличается от managing-astro-deployments?
Этот скилл про диагностику проблем на продакшне. Управление развёртываниями вынесено в managing-astro-deployments, а локальная разработка — в managing-astro-local-env.
Исходный текст
SKILL.md · Apache-2.0
--- name: troubleshooting-astro-deployments description: Troubleshoot Astronomer production deployments with Astro CLI. Use when investigating deployment issues, viewing production logs, analyzing failures, or managing deployment environment variables. --- # Astro Deployment Troubleshooting This skill helps you diagnose and troubleshoot production Astronomer deployments using the Astro CLI. > **For deployment management**, see the **managing-astro-deployments** skill. > **For local development**, see the **managing-astro-local-env** skill. --- ## Quick Health Check Start with these commands to get an overview: ```bash # 1. List deployments to find target astro deployment list # 2. Get deployment overview astro deployment inspect <DEPLOYMENT_ID> # 3. Check for errors astro deployment logs <DEPLOYMENT_ID> --error -c 50 ``` --- ## Viewing Deployment Logs Use `-c` to control log count (default: 500). Log flags cannot be combined — use one component or level flag per command. ### Component-Specific Logs View logs from specific Airflow components: ```bash # Scheduler logs (DAG processing, task scheduling) astro deployment logs <DEPLOYMENT_ID> --scheduler -c 50 # Worker logs (task execution) astro deployment logs <DEPLOYMENT_ID> --workers -c 30 # Webserver logs (UI access, health checks) astro deployment logs <DEPLOYMENT_ID> --webserver -c 30 # Triggerer logs (deferrable operators) astro deployment logs <DEPLOYMENT_ID> --triggerer -c 30 ``` ### Log Level Filtering Filter by severity: ```bash # Error logs only (most useful for troubleshooting) astro deployment logs <DEPLOYMENT_ID> --error -c 30 # Warning logs astro deployment logs <DEPLOYMENT_ID> --warn -c 50 # Info-level logs astro deployment logs <DEPLOYMENT_ID> --info -c 50 ``` ### Search Logs Search for specific keywords: ```bash # Search for specific error astro deployment logs <DEPLOYMENT_ID> --keyword "ConnectionError" # Search for specific DAG astro deployment logs <DEPLOYMENT_ID> --keyword "my_dag_name" -c 100 # Find import errors astro deployment logs <DEPLOYMENT_ID> --error --keyword "ImportError" # Find task failures astro deployment logs <DEPLOYMENT_ID> --error --keyword "Task failed" ``` --- ## Complete Investigation Workflow ### Step 1: Identify the Problem ```bash # List deployments with status astro deployment list # Get deployment details astro deployment inspect <DEPLOYMENT_ID> ``` Look for: - Status: HEALTHY vs UNHEALTHY - Runtime version compatibility - Resource limits (CPU, memory) - Recent deployment timestamp ### Step 2: Check Error Logs ```bash # Start with errors astro deployment logs <DEPLOYMENT_ID> --error -c 50 ``` Look for: - Recurring error patterns - Specific DAGs failing repeatedly - Import errors or syntax errors - Connection or credential errors ### Step 3: Review Scheduler Logs ```bash # Check DAG processing astro deployment logs <DEPLOYMENT_ID> --scheduler -c 30 ``` Look for: - DAG parse errors - Scheduling delays - Task queueing issues ### Step 4: Check Worker Logs ```bash # Check task execution astro deployment logs <DEPLOYMENT_ID> --workers -c 30 ``` Look for: - Task execution failures - Resource exhaustion - Timeout errors ### Step 5: Verify Configuration ```bash # Check environment variables astro deployment variable list --deployment-id <DEPLOYMENT_ID> # Verify deployment settings astro deployment inspect <DEPLOYMENT_ID> ``` Look for: - Missing or incorrect environment variables - Secrets configuration (AIRFLOW__SECRETS__BACKEND) - Connection configuration --- ## Common Investigation Patterns ### Recurring DAG Failures Follow the complete investigation workflow above, then narrow to the specific DAG: ```bash astro deployment logs <DEPLOYMENT_ID> --keyword "my_dag_name" -c 100 ``` ### Resource Issues ```bash # 1. Check deployment resource allocation astro deployment inspect <DEPLOYMENT_ID> # Look for: resource_quota_cpu, resource_quota_memory # Worker queue: max_worker_count, worker_type # 2. Check for worker scaling issues astro deployment logs <DEPLOYMENT_ID> --workers -c 50 # 3. Look for out-of-memory errors astro deployment logs <DEPLOYMENT_ID> --error --keyword "memory" ``` ### Configuration Problems ```bash # 1. Review environment variables astro deployment variable list --deployment-id <DEPLOYMENT_ID> # 2. Check for secrets backend configuration # Look for: AIRFLOW__SECRETS__BACKEND, AIRFLOW__SECRETS__BACKEND_KWARGS # 3. Verify deployment settings astro deployment inspect <DEPLOYMENT_ID> # 4. Check webserver logs for auth issues astro deployment logs <DEPLOYMENT_ID> --webserver -c 30 ``` ### Import Errors ```bash # 1. Find import errors astro deployment logs <DEPLOYMENT_ID> --error --keyword "ImportError" # 2. Check scheduler for parse failures astro deployment logs <DEPLOYMENT_ID> --scheduler --keyword "Failed to import" -c 50 # 3. Verify dependencies were deployed astro deployment inspect <DEPLOYMENT_ID> # Check: current_tag, last deployment timestamp ``` --- ## Environment Variables Management ### List Variables ```bash # List all variables for deployment astro deployment variable list --deployment-id <DEPLOYMENT_ID> # Find specific variable astro deployment variable list --deployment-id <DEPLOYMENT_ID> --key AWS_REGION # Export variables to file astro deployment variable list --deployment-id <DEPLOYMENT_ID> --save --env .env.backup ``` ### Create Variables ```bash # Create regular variable astro deployment variable create --deployment-id <DEPLOYMENT_ID> \ --key API_ENDPOINT \ --value https://api.example.com # Create secret (masked in UI and logs) astro deployment variable create --deployment-id <DEPLOYMENT_ID> \ --key API_KEY \ --value secret123 \ --secret ``` ### Update Variables ```bash # Update existing variable astro deployment variable update --deployment-id <DEPLOYMENT_ID> \ --key API_KEY \ --value newsecret ``` ### Delete Variables ```bash # Delete variable astro deployment variable delete --deployment-id <DEPLOYMENT_ID> --key OLD_KEY ``` **Note**: Variables are available to DAGs as environment variables. Changes require no redeployment. --- ## Key Metrics from `deployment inspect` Focus on these fields when troubleshooting: - **status**: HEALTHY vs UNHEALTHY - **runtime_version**: Airflow version compatibility - **scheduler_size/scheduler_count**: Scheduler capacity - **executor**: CELERY, KUBERNETES, or LOCAL - **worker_queues**: Worker scaling limits and types - `min_worker_count`, `max_worker_count` - `worker_concurrency` - `worker_type` (resource class) - **resource_quota_cpu/memory**: Overall resource limits - **dag_deploy_enabled**: Whether DAG-only deploys work - **current_tag**: Last deployment version - **is_high_availability**: Redundancy enabled --- ## Investigation Best Practices 1. **Always start with error logs** - Most obvious failures appear here 2. **Check error logs for patterns** - Same DAG failing repeatedly? Timing patterns? 3. **Component-specific troubleshooting**: - Worker logs → task execution details - Scheduler logs → DAG processing and scheduling - Webserver logs → UI issues and health checks - Triggerer logs → deferrable operator issues 4. **Use `--keyword` for targeted searches** - More efficient than reading all logs 5. **The `inspect` command is your health dashboard** - Check it first 6. **Environment variables in `inspect` output** - May reveal configuration issues 7. **Log count default is 500** - Adjust with `-c` based on needs 8. **Don't forget to check deployment time** - Recent deploy might have introduced issue --- ## Troubleshooting Quick Reference | Symptom | Command | |---------|---------| | Deployment shows UNHEALTHY | `astro deployment inspect <ID>` + `--error` logs | | DAG not appearing | `--error` logs for import errors, check `--scheduler` logs | | Tasks failing | `--workers` logs + search for DAG with `--keyword` | | Slow scheduling | `--scheduler` logs + check `inspect` for scheduler resources | | UI not responding | `--webserver` logs | | Connection issues | Check variables, search logs for connection name | | Import errors | `--error --keyword "ImportError"` + `--scheduler` logs | | Out of memory | `inspect` for resources + `--workers --keyword "memory"` | --- ## Related Skills - **managing-astro-deployments**: Create, update, delete deployments, deploy code - **managing-astro-local-env**: Manage local Airflow development environment - **setting-up-astro-project**: Initialize and configure Astro projects
© astronomer · Apache-2.0 · astronomer/agents