返回顶部
r

runbook-generatorRunbook生成器

Runbook Generator

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
292
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

runbook-generator

Runbook 生成器

层级: 强大
类别: 工程
领域: DevOps / 站点可靠性工程



概述

分析代码库并生成生产级运维手册。检测您的技术栈(CI/CD、数据库、托管、容器),然后生成包含可复制粘贴命令、验证检查、回滚流程、升级路径和时间预估的分步式运维手册。通过与配置文件修改日期关联的过时检测机制,保持运维手册的时效性。



核心能力

  • - 技术栈检测 — 从仓库文件中自动识别 CI/CD、数据库、托管、编排工具
  • 运维手册类型 — 部署、事件响应、数据库维护、扩缩容、监控搭建
  • 格式规范 — 编号步骤、可复制粘贴命令、✅ 验证检查、时间预估
  • 升级路径 — L1 → L2 → L3,包含联系信息和决策标准
  • 回滚流程 — 每个部署步骤都有对应的撤销操作
  • 过时检测 — 运维手册章节引用配置文件;源文件变更时发出标记
  • 测试方法论 — 用于预发布环境验证的预演框架,季度审查节奏

使用时机

在以下情况使用:

  • - 代码库没有运维手册,需要快速搭建
  • 现有运维手册过时或不完整(指向仓库,重新生成)
  • 新工程师入职,需要清晰的运维流程
  • 准备事件响应演练或审计
  • 从零开始搭建监控和值班轮换

在以下情况跳过:

  • - 系统处于早期阶段,尚未形成稳定的运维模式
  • 运维手册已存在,仅需小幅更新(直接编辑)



技术栈检测

给定仓库后,在编写任何运维手册内容前扫描以下信号:

bash

CI/CD


ls .github/workflows/ → GitHub Actions
ls .gitlab-ci.yml → GitLab CI
ls Jenkinsfile → Jenkins
ls .circleci/ → CircleCI
ls bitbucket-pipelines.yml → Bitbucket Pipelines

数据库

grep -r postgresql\|postgres\|pg package.json pyproject.toml → PostgreSQL grep -r mysql\|mariadb package.json → MySQL grep -r mongodb\|mongoose package.json → MongoDB grep -r redis package.json → Redis ls prisma/schema.prisma → Prisma ORM(检查 provider 字段) ls drizzle.config.* → Drizzle ORM

托管

ls vercel.json → Vercel ls railway.toml → Railway ls fly.toml → Fly.io ls .ebextensions/ → AWS Elastic Beanstalk ls terraform/ ls *.tf → 自定义 AWS/GCP/Azure(检查 provider) ls kubernetes/ ls k8s/ → Kubernetes ls docker-compose.yml → Docker Compose

框架

ls next.config.* → Next.js ls nuxt.config.* → Nuxt ls svelte.config.* → SvelteKit cat package.json | jq .scripts → 检查 build/start 命令

将检测到的技术栈映射到运维手册模板。一个 Next.js + PostgreSQL + Vercel + GitHub Actions 仓库需要:

  • - 部署运维手册(Vercel + GitHub Actions)
  • 数据库运维手册(PostgreSQL 备份、迁移、清理)
  • 事件响应(使用 Vercel 日志 + pg 查询调试)
  • 监控搭建(Vercel Analytics、pg_stat、告警)



运维手册类型

1. 部署运维手册

markdown

部署运维手册 — [应用名称]


技术栈: Next.js 14 + PostgreSQL 15 + Vercel
最后验证时间: 2025-03-01
源配置文件: vercel.json(修改时间:git log -1 --format=%ci -- vercel.json)
负责人: 平台团队
预估总时间: 15–25 分钟


部署前检查清单


  • - [ ] 所有 PR 已合并到主分支
  • [ ] 主分支 CI 通过(GitHub Actions 绿色)
  • [ ] 数据库迁移已在预发布环境测试
  • [ ] 回滚计划已确认

步骤

步骤 1 — 本地运行 CI 检查(3 分钟)

bash pnpm test pnpm lint pnpm build

✅ 预期:全部通过,0 错误。构建输出在 .next/ 目录中

步骤 2 — 应用数据库迁移(5 分钟)

bash

先在预发布环境执行

DATABASEURL=$STAGINGDATABASE_URL npx prisma migrate deploy

✅ 预期:All migrations have been successfully applied.

bash

验证迁移已应用


psql $STAGINGDATABASEURL -c \d | grep -i migration

✅ 预期:迁移表显示带有今天日期的新条目

步骤 3 — 部署到生产环境(5 分钟)

bash git push origin main

或手动触发:

vercel --prod

✅ 预期:Vercel 仪表板显示部署进行中。URL 格式:
https://app-name--team.vercel.app

步骤 4 — 生产环境冒烟测试(5 分钟)

bash

健康检查

curl -sf https://your-app.vercel.app/api/health | jq .

关键路径

curl -sf https://your-app.vercel.app/api/users/me \ -H Authorization: Bearer $TEST_TOKEN | jq .id

✅ 预期:健康检查返回 {status:ok,db:connected}。用户 API 返回有效 ID。

步骤 5 — 监控 10 分钟

  • - 检查 Vercel Functions 日志中的错误:vercel logs --since=10m
  • 检查 Vercel Analytics 中的错误率:< 1% 5xx
  • 检查数据库连接池:SELECT count(*) FROM pgstatactivity;(< max_connections 的 80%)

回滚

如果冒烟测试失败或错误率飙升:

bash

通过 Vercel 即时回滚(推荐 — < 30 秒)


vercel rollback [previous-deployment-url]

数据库回滚(仅在迁移已应用时执行)

DATABASEURL=$PRODDATABASE_URL npx prisma migrate reset --skip-seed

警告:这将重置到之前的迁移。先确认数据影响。

✅ 回滚后预期:之前的部署 URL 变为活跃状态。通过冒烟测试验证。



升级路径


  • - L1(值班工程师): 检查 Vercel 日志,运行冒烟测试,尝试回滚
  • L2(平台负责人): 数据库问题、数据丢失风险、回滚失败 — Slack:@platform-lead
  • L3(CTO): 生产环境宕机 > 30 分钟、数据泄露 — PagerDuty:#critical-incidents



2. 事件响应运维手册

markdown

事件响应运维手册


严重级别: P1(宕机)、P2(降级)、P3(轻微)
预估总时间: P1:30–60 分钟、P2:1–4 小时

阶段 1 — 分类(5 分钟)

确认事件

bash

应用是否响应?

curl -sw %{http_code} https://your-app.vercel.app/api/health -o /dev/null

检查 Vercel 函数错误(最近 15 分钟)

vercel logs --since=15m | grep -i error\|exception\|5[0-9][0-9]

✅ 200 = 应用正常运行。5xx 或超时 = 事件已确认。

声明严重级别:

  • - 站点完全宕机 → P1 — 立即通知 L2/L3
  • 部分降级/响应缓慢 → P2 — 通知团队频道
  • 单个功能故障 → P3 — 创建工单,工作时间修复



阶段 2 — 诊断(10–15 分钟)

bash

最近部署 — 是否有刚上线的内容?


vercel ls --limit=5

数据库健康状态

psql $DATABASEURL -c SELECT pid, state, waitevent, query FROM pgstatactivity WHERE state != idle LIMIT 20;

长时间运行的查询(> 30 秒)

psql $DATABASEURL -c SELECT pid, now() - pgstatactivity.querystart AS duration, query FROM pgstatactivity WHERE state = active AND now() - pgstatactivity.query_start > interval 30 seconds;

连接池饱和

psql $DATABASEURL -c SELECT count(*), max

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 runbook-generator-1776164292 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 runbook-generator-1776164292 技能

通过命令行安装

skillhub install runbook-generator-1776164292

下载

⬇ 下载 runbook-generator v1.0.0(免费)

文件大小: 6.31 KB | 发布时间: 2026-4-15 13:45

v1.0.0 最新 2026-4-15 13:45
Initial publish

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部