SuperAPI AI 工具集

sentry-cli

部署与运维

查看项目

更新于 10-14 21:09

技能介绍

用途

Sentry CLI 用于从命令行与 Sentry 交互,帮助用户查看问题、事件、项目、组织、追踪、日志、发布等信息。它面向需要在终端或自动化流程中操作 Sentry 的用户,也包含面向 AI 编码代理的使用指引。

主要能力

  • 问题排查:列出、查看、解释和规划问题修复。
  • 追踪与性能:列出追踪、查看追踪的 span 树、查看 span 与关联日志。
  • 日志:实时流式查看日志,并按严重级别过滤。
  • 本地事件捕获(Spotlight):在本地运行应用并捕获错误、追踪、日志,无需 DSN 即可只发送到本地服务器。
  • 文档查询:通过 sentry docs 直接查询 Sentry 文档。
  • API 探索:通过 sentry schema 浏览或搜索 API 端点。
  • 发布管理:创建发布、关联提交、标记完成、记录部署。
  • 智能体会话:列出和查看智能体对话记录。
  • WebAssembly 模块处理:为 wasm 模块添加构建 ID、拆分调试数据。
  • 任意 API 访问:通过 sentry api 以类似 curl 的方式直接调用接口。
  • 仪表盘:以 6 列网格布局添加小组件,支持多种显示类型与数据集。

使用方式

核心规则是直接运行命令。CLI 会自动检测组织与项目(来自 .sentryclirc 配置、.env 或源码中的 DSN、以及目录名),因此不要先列出组织再列出项目来手动确定当前检出对应的项目。仅当 CLI 报告无法检测目标或检测错误时,才显式传入 <org>/<project>。

命令遵循 gh(GitHub CLI)的 <名词> <动词> 模式,例如 sentry issue list、sentry org view。标志也沿用 gh 约定:--json 输出机器可读结果,--fields 选择特定字段,-w/--web 在浏览器中打开,-q/--query 过滤,-n/--limit 限制结果数量。sentry api 命令模仿 curl,提供 --method、--data、--header 等选项并自动处理认证。

常用工作流示例:

排查问题:

sentry issue list --query "is:unresolved" --limit 5
sentry issue view PROJECT-123 --json
sentry issue explain PROJECT-123
sentry issue plan PROJECT-123

探索追踪与性能:

sentry trace list --limit 5
sentry trace view abc123def456...
sentry span list abc123def456...
sentry trace logs abc123def456...

流式查看日志:

sentry log list --follow
sentry log list --query "severity:error"

本地捕获事件(Spotlight):

sentry local run -- npm run dev
sentry local run --open -- npm run dev
sentry local -f ai

查询文档与状态:

sentry docs "How do I configure tracing in Next.js?"
sentry docs list "source maps"
sentry status
sentry status --json

探索 API:

sentry schema
sentry schema issues
sentry schema "GET /api/0/organizations/{organization_id_or_slug}/issues/"

管理发布:

sentry release create my-org/1.0.0 --project my-project
sentry release set-commits my-org/1.0.0 --auto
sentry release set-commits my-org/1.0.0 --local
sentry release finalize my-org/1.0.0
sentry release deploy my-org/1.0.0 production

查看智能体会话:

sentry agent-conversation list
sentry agent-conversation list my-org --period 24h
sentry agent-conversation view my-org/conv-123
sentry agent-conversation view conv-123 --json

处理 WebAssembly 模块:

sentry wasm-split app.wasm
BUILD_ID=$(sentry wasm-split app.wasm)
sentry wasm-split app.wasm --debug-out app.debug.wasm --strip

任意 API 访问:

sentry api /api/0/organizations/my-org/
sentry api /api/0/organizations/my-org/projects/ --method POST --data '{"name":"new-project","platform":"python"}'

适用场景

  • 在终端中快速排查 Sentry 问题与事件。
  • 分析追踪、span 与性能数据。
  • 实时查看日志并按严重级别过滤。
  • 在本地开发时捕获事件而不消耗生产配额。
  • 在 CI 或脚本中管理发布与部署。
  • 查询 Sentry 文档与 API 结构。
  • 查看智能体对话记录。
  • 处理 WebAssembly 调试数据。

限制与注意事项

  • 使用前必须安装并认证 CLI。
  • 破坏性命令(如 project delete、trial start)必须先与用户确认。
  • 变更操作前应确认命令输出中的组织/项目上下文正确。
  • 不得存储或记录认证令牌,CLI 会自动管理凭据。
  • 若 CLI 报告组织/项目错误,用显式 <org>/<project> 参数覆盖。
  • 问题 ID 应使用短 ID(如 PROJECT-123),而非数字 ID。
  • 程序化解析输出时应使用 --json。
  • --query 使用 Sentry 搜索语法(如 is:unresolved、assigned:me),不是自由文本搜索。
  • 发布版本必须与 Sentry.init() 中的 release 值完全一致,位置参数为 <org-slug>/<version>。
  • --auto 需要 Sentry 仓库集成与本地 git 检出;无检出时使用 --local。
  • 退出码具有语义:0 成功,10–19 认证错误,20–29 输入错误,30–39 API 错误,40–49 功能不可用,50–59 操作错误,60–69 命令特定错误。
  • 仪表盘使用 6 列网格,添加小组件时应填满整行。
  • 可用数据集包括 spans(默认)、errors、metrics、issue、logs;Events API 的有效数据集值为 spans、logs、errors、tracemetrics、profile_functions、uptime_results。
  • 具体安装方式、收费与价格信息暂未提供。