SuperAPI AI 工具集

railway-metrics

通用与其它

查看项目

更新于 10-15 20:34

技能介绍

用途:查询 Railway 服务的资源使用指标,适用于用户询问 CPU、内存、网络流量、磁盘用量,或需要排查性能问题、判断服务是否健康时。

主要能力:通过 GraphQL 查询 metrics 字段,支持多种测量项,包括 CPU_USAGE(CPU 使用核数)、CPU_LIMIT、MEMORY_USAGE_GB、MEMORY_LIMIT_GB、NETWORK_RX_GB、NETWORK_TX_GB、DISK_USAGE_GB、EPHEMERAL_DISK_USAGE_GB、BACKUP_USAGE_GB。支持按 DEPLOYMENT_ID、DEPLOYMENT_INSTANCE_ID、REGION、SERVICE_ID 分组(groupBy)。

使用方式:先通过 railway status --json 获取 environment.id 与 service.id;再调用 ${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh 执行查询,传入 environmentId、可选 serviceId、startDate(必填,ISO 8601)、endDate、sampleRateSeconds、averagingWindowSeconds、groupBy、measurements。省略 serviceId 并配合 groupBy 可查询环境内全部服务。建议用 heredoc 避免 shell 转义问题。

时间参数:startDate 必填,endDate 默认当前时间,sampleRateSeconds 为采样间隔,averagingWindowSeconds 用于平滑。

输出解读:返回 measurement、tags(deploymentId、serviceId、region)与 values(ts 时间戳、value 数值,CPU 为核数,内存/磁盘/网络为 GB)。

组合使用:可用 railway-status 获取 ID,railway-service 检查部署状态,railway-deployment 查看日志,railway-environment 调整资源。

限制与错误处理:无活跃部署的服务返回空指标数组,用 jq 时需处理 null;服务较新或无流量时可能无数据;ID 无效需用 railway status --json 核对;查询指标需要项目访问权限。