mcpField
S
sentry-automation

sentry-automation

github.com/sickn33云与 DevOps48.8k84 次安装今天更新
代码仓库

关于 sentry-automation

sentry-automation 是通过 Composio 的 Sentry 工具集和 Rube MCP 自动化 Sentry 错误跟踪与监控的技能,适用于问题排查、告警配置、发布管理和组织信息查看等工作流。

主要功能

  1. 01排查组织和项目问题
  2. 02查看事件、堆栈跟踪和标签
  3. 03创建和更新告警规则
  4. 04创建发布并记录部署信息
  5. 05查看团队、成员和监控器

适用场景

  1. 01处理未解决的 Sentry 问题
  2. 02配置项目级或组织级告警
  3. 03跟踪发布及部署元数据
  4. 04查看组织成员或 Cron 监控器

MCP 相关

通过 Rube MCP 访问 Composio 的 Sentry 工具集。使用前须通过 RUBE_SEARCH_TOOLS 查询工具,并建立有效的 Sentry 连接。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill sentry-automation

安装后在 Claude Code 中输入/sentry-automation确认已加载。

详细介绍

通过 Rube MCP 实现 Sentry 自动化

通过 Rube MCP 使用 Composio 的 Sentry 工具包,自动化 Sentry 错误跟踪和监控操作。

前提条件

  • 必须已连接 Rube MCP(可用 RUBE_SEARCH_TOOLS)
  • 通过工具包 sentry 使用 RUBE_MANAGE_CONNECTIONS 建立有效的 Sentry 连接
  • 始终先调用 RUBE_SEARCH_TOOLS,以获取当前工具架构

设置

获取 Rube MCP:在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务。目标 Sentry 组织仍须完成身份验证并授予所需的范围权限。

  1. 确认 RUBE_SEARCH_TOOLS 有响应,以验证 Rube MCP 是否可用
  2. 使用工具包 sentry 调用 RUBE_MANAGE_CONNECTIONS
  3. 如果连接状态不是 ACTIVE,请按照返回的身份验证链接完成 Sentry OAuth
  4. 运行任何工作流前,确认连接状态为 ACTIVE

事件隐私和警报影响

读取或写入前,请解析当前架构并确认准确的组织和项目。事件载荷、堆栈跟踪、源映射和用户标签可能包含机密或个人数据:仅获取必要信息,并对导出内容和日志进行脱敏。仅进行调查并不代表有权解决问题、上传源映射、更改保留期限、创建警报或编辑监控器;警报操作可能会反复通知人员。在 Sentry 中记录部署属于元数据,并不能证明代码已部署。对于结果不确定的写入操作,请先核实再重试,并读取配置变更以确认结果。

核心工作流

1. 调查问题

适用场景:用户想查找、检查或分类错误问题

工具调用顺序:

  1. SENTRY_LIST_AN_ORGANIZATIONS_ISSUES - 列出组织中的问题[必需]
  2. SENTRY_GET_ORGANIZATION_ISSUE_DETAILS - 获取特定问题的详细信息[可选]
  3. SENTRY_LIST_AN_ISSUES_EVENTS - 查看某个问题的单个错误事件[可选]
  4. SENTRY_RETRIEVE_AN_ISSUE_EVENT - 获取包含堆栈跟踪的完整事件详情[可选]
  5. SENTRY_RETRIEVE_ISSUE_TAG_DETAILS - 检查某个问题的标签分布[可选]

关键参数:

  • organization_id_or_slug:组织标识符
  • issue_id:数字问题 ID
  • query:搜索查询(例如,is:unresolved、assigned:me、browser:Chrome)
  • sort:排序方式(date、new、freq、priority)
  • statsPeriod:统计时间范围(24h、14d 等)

注意事项:

  • organization_id_or_slug 是组织的 slug(例如,'my-org'),而不是显示名称
  • 问题 ID 为数字;不要与 UUID 格式的事件 ID 混淆
  • 查询语法使用 Sentry 的搜索格式:is:unresolved、assigned:me、!has:release
  • 同一问题中的事件可能有不同的堆栈跟踪;请检查单个事件以了解详情
2. 管理项目问题

适用场景:用户想查看特定项目范围内的问题

工具调用顺序:

  1. SENTRY_RETRIEVE_ORGANIZATION_PROJECTS - 列出项目以查找项目 slug[前置步骤]
  2. SENTRY_RETRIEVE_PROJECT_ISSUES_LIST - 列出特定项目的问题[必需]
  3. SENTRY_RETRIEVE_ISSUE_EVENTS_BY_ID - 获取特定问题的事件[可选]

关键参数:

  • organization_id_or_slug:组织标识符
  • project_id_or_slug:项目标识符
  • query:搜索筛选字符串
  • statsPeriod:统计时间范围

注意事项:

  • 项目 slug 与项目显示名称不同
  • 请务必先通过 RETRIEVE_ORGANIZATION_PROJECTS 将项目名称解析为 slug
  • 按项目筛选的问题列表,其分页方式可能与按组织筛选的列表不同
3. 配置告警规则

适用场景:用户想要为项目创建或管理告警规则

工具调用顺序:

  1. SENTRY_RETRIEVE_ORGANIZATION_PROJECTS - 查找告警对应的项目 [前置条件]
  2. SENTRY_RETRIEVE_PROJECT_RULES_BY_ORG_AND_PROJECT_ID - 列出已有规则 [可选]
  3. SENTRY_CREATE_PROJECT_RULE_FOR_ALERTS - 创建新的告警规则 [必需]
  4. SENTRY_CREATE_ORGANIZATION_ALERT_RULE - 创建组织级指标告警 [替代方案]
  5. SENTRY_UPDATE_ORGANIZATION_ALERT_RULES - 更新已有告警规则 [可选]
  6. SENTRY_RETRIEVE_ALERT_RULE_DETAILS - 查看特定告警规则 [可选]
  7. SENTRY_GET_PROJECT_RULE_DETAILS - 获取项目级规则详情 [可选]

关键参数:

  • name:告警规则名称
  • conditions:触发条件数组
  • actions:触发时要执行的操作数组
  • filters:事件筛选条件数组
  • frequency:触发频率(分钟)
  • actionMatch:条件匹配方式,可设为 'all'、'any' 或 'none'

注意事项:

  • 项目级规则(CREATE_PROJECT_RULE)与组织级指标告警(CREATE_ORGANIZATION_ALERT_RULE)不同
  • 条件、操作和筛选条件使用特定的 JSON 架构;请查看 Sentry 文档了解有效类型
  • frequency 的单位是分钟;设置过低会导致告警疲劳
  • actionMatch 的默认值可能有所不同;请显式设置,以避免意外行为
4. 管理发布版本

适用场景:用户想要创建、跟踪或管理发布版本

工具调用顺序:

  1. SENTRY_LIST_ORGANIZATION_RELEASES - 列出现有发布版本 [可选]
  2. SENTRY_CREATE_RELEASE_FOR_ORGANIZATION - 创建新的发布版本 [必需]
  3. SENTRY_UPDATE_RELEASE_DETAILS_FOR_ORGANIZATION - 更新发布版本元数据 [可选]
  4. SENTRY_CREATE_RELEASE_DEPLOY_FOR_ORG - 记录发布版本的部署 [可选]
  5. SENTRY_UPLOAD_RELEASE_FILE_TO_ORGANIZATION - 上传源映射或文件 [可选]

关键参数:

  • version:发布版本字符串(例如,'1.0.0'、提交 SHA)
  • projects:此发布版本所属项目的 slug 数组
  • dateReleased:发布时间戳(ISO 8601)
  • environment:部署环境名称(例如,'production'、'staging')

注意事项:

  • 同一组织内的发布版本必须唯一
  • 一个发布版本可以涉及多个项目;请使用 projects 数组
  • 部署发布版本与创建发布版本是分开的;请使用 CREATE_RELEASE_DEPLOY
  • 上传源映射前,必须先创建发布版本
5. 监控组织和团队

适用场景:用户想要查看组织结构、团队或成员列表

工具调用顺序:

  1. SENTRY_GET_ORGANIZATION_DETAILS 或 SENTRY_GET_ORGANIZATION_BY_ID_OR_SLUG - 获取组织信息 [必需]
  2. SENTRY_LIST_TEAMS_IN_ORGANIZATION - 列出所有团队 [可选]
  3. SENTRY_LIST_ORGANIZATION_MEMBERS - 列出组织成员 [可选]
  4. SENTRY_GET_PROJECT_LIST - 列出所有可访问的项目 [可选]

关键参数:

  • organization_id_or_slug:组织标识符
  • cursor:大型结果集的分页游标

注意事项:

  • 组织 slug 是适用于 URL 的标识符,不是显示名称
  • 成员列表可能会分页;请使用游标分页
  • 团队和成员的可见性取决于已验证用户的权限
6. 管理监控器(Cron 监控)

适用场景:用户想要更新 Cron 作业监控配置

工具调用顺序:

  1. SENTRY_UPDATE_A_MONITOR - 更新监控器配置 [必需]

关键参数:

  • organization_id_or_slug:组织标识符
  • monitor_id_or_slug:监控器标识符
  • name:监控器显示名称
  • schedule:Cron 计划表达式或间隔
  • checkin_margin:延迟签入的宽限时间(分钟)
  • max_runtime:预期最长运行时间(分钟)

注意事项:

  • 监控器 slug 根据名称自动生成;API 调用时请使用 slug
  • 计划变更会立即生效
  • 缺少签入时,会在宽限期结束后触发告警

常见模式

ID 解析

组织名称 -> Slug:

1. Call SENTRY_GET_ORGANIZATION_DETAILS
2. Extract slug field from response

项目名称 -> Slug:

1. Call SENTRY_RETRIEVE_ORGANIZATION_PROJECTS
2. Find project by name, extract slug
分页
  • Sentry 使用基于游标的分页,并通过 Link 响应头传递信息
  • 检查响应中的游标值
  • 在下一个请求中传递游标,直到没有更多页面
搜索查询语法
  • is:unresolved - 未解决的问题
  • is:resolved - 已解决的问题
  • assigned:me - 分配给当前用户
  • assigned:team-slug - 分配给某个团队
  • !has:release - 没有 release 的问题
  • first-release:1.0.0 - 首次出现在某个 release 中的问题
  • times-seen:>100 - 出现次数超过 100 次
  • browser:Chrome - 按浏览器标签筛选

已知陷阱

ID 格式:

  • 组织:使用 slug(例如 'my-org'),而非显示名称
  • 项目:使用 slug(例如 'my-project'),而非显示名称
  • 问题 ID:数字整数
  • 事件 ID:UUID(32 个字符的十六进制字符串)

权限:

  • API token 的权限范围必须与所执行的操作相匹配
  • 组织级操作需要组织级权限
  • 项目级操作需要项目访问权限

速率限制:

  • Sentry 按组织实施速率限制
  • 对 429 响应实现退避
  • 批量操作应错开执行

快速参考

任务工具 Slug关键参数
列出组织问题SENTRY_LIST_AN_ORGANIZATIONS_ISSUESorganization_id_or_slug, query
获取问题详情SENTRY_GET_ORGANIZATION_ISSUE_DETAILSorganization_id_or_slug, issue_id
列出问题事件SENTRY_LIST_AN_ISSUES_EVENTSissue_id
获取事件详情SENTRY_RETRIEVE_AN_ISSUE_EVENTorganization_id_or_slug, event_id
列出项目问题SENTRY_RETRIEVE_PROJECT_ISSUES_LISTorganization_id_or_slug, project_id_or_slug
列出项目SENTRY_RETRIEVE_ORGANIZATION_PROJECTSorganization_id_or_slug
获取组织详情SENTRY_GET_ORGANIZATION_DETAILSorganization_id_or_slug
列出团队SENTRY_LIST_TEAMS_IN_ORGANIZATIONorganization_id_or_slug
列出成员SENTRY_LIST_ORGANIZATION_MEMBERSorganization_id_or_slug
创建告警规则SENTRY_CREATE_PROJECT_RULE_FOR_ALERTSorganization_id_or_slug, project_id_or_slug
创建指标告警SENTRY_CREATE_ORGANIZATION_ALERT_RULEorganization_id_or_slug
创建 releaseSENTRY_CREATE_RELEASE_FOR_ORGANIZATIONorganization_id_or_slug, version
部署 releaseSENTRY_CREATE_RELEASE_DEPLOY_FOR_ORGorganization_id_or_slug, version
列出 releaseSENTRY_LIST_ORGANIZATION_RELEASESorganization_id_or_slug
更新 monitorSENTRY_UPDATE_A_MONITORorganization_id_or_slug, monitor_id_or_slug

何时使用

此技能适用于执行概述中描述的工作流或操作。

限制

  • 仅当任务明确符合上述范围时才使用此技能。
  • 请勿将输出视为特定环境验证、测试或专家评审的替代品。
  • 如果缺少必需的输入、权限、安全边界或成功标准,请停止并请求澄清。

评论

支持 Markdown