Sentry (Read-only)
Read production errors and issues from Sentry.
Setup
CODEBLOCK0
If SENTRY_AUTH_TOKEN is missing:
- 1. Go to https://sentry.io/settings/account/api/auth-tokens/
- Create a token with scopes:
project:read, event:read, INLINECODE3 - Set
SENTRY_AUTH_TOKEN in your environment
Set optional defaults to avoid passing flags every time:
CODEBLOCK1
Script path
CODEBLOCK2
Commands
List recent issues
CODEBLOCK3
Get issue detail
CODEBLOCK4
Get events for an issue
CODEBLOCK5
Get event detail (no stack traces by default)
CODEBLOCK6
Add --include-entries to include stack traces.
Resolve a short ID (e.g. ABC-123) to issue ID
CODEBLOCK7
Parameters
| Flag | Default | Description |
|---|
| INLINECODE6 | INLINECODE7 | Org slug |
| INLINECODE8 |
$SENTRY_PROJECT | Project slug |
|
--time-range |
24h | Stats period (e.g.
7d,
30d) |
|
--environment |
prod | Environment filter |
|
--limit |
20 | Max results (max 50) |
|
--query | | Sentry search query |
|
--base-url |
https://sentry.io | For self-hosted Sentry |
|
--no-redact | | Disable PII redaction —
avoid in shared/logged environments |
Notes
- - PII (emails, IPs) is redacted by default
- Stack traces are excluded from event detail by default — add
--include-entries only when you need them and trust the environment - INLINECODE23 disables PII redaction — avoid in shared or logged environments
- For self-hosted Sentry, set
SENTRY_BASE_URL or use INLINECODE25
Sentry(只读)
从 Sentry 读取生产错误和问题。
设置
bash
检查令牌是否已设置(不打印值)
[ -n $SENTRY
AUTHTOKEN ] && echo SENTRY
AUTHTOKEN: 已设置 || echo SENTRY
AUTHTOKEN: 缺失
echo 组织=${SENTRY_ORG:-未设置}
echo 项目=${SENTRY_PROJECT:-未设置}
如果 SENTRYAUTHTOKEN 缺失:
- 1. 前往 https://sentry.io/settings/account/api/auth-tokens/
- 创建一个包含以下权限范围的令牌:project:read、event:read、org:read
- 在环境中设置 SENTRYAUTHTOKEN
设置可选默认值以避免每次传递参数:
bash
export SENTRY_ORG=your-org-slug
export SENTRY_PROJECT=your-project-slug
脚本路径
bash
SKILL_DIR=$(python3 -c import os; print(os.path.dirname(os.path.realpath($0))) 2>/dev/null || echo $HOME/.claude/skills/sentry)
SENTRYAPI=$SKILLDIR/scripts/sentry_api.py
命令
列出近期问题
bash
python3 $SENTRY_API list-issues \
--org $SENTRY_ORG \
--project $SENTRY_PROJECT \
--time-range 24h \
--environment prod \
--limit 20 \
--query is:unresolved
获取问题详情
bash
python3 $SENTRYAPI issue-detail ISSUEID
获取问题的事件
bash
python3 $SENTRYAPI issue-events ISSUEID --limit 10
获取事件详情(默认不包含堆栈跟踪)
bash
python3 $SENTRY_API event-detail \
--org $SENTRY_ORG \
--project $SENTRY_PROJECT \
EVENT_ID
添加 --include-entries 以包含堆栈跟踪。
将短 ID(例如 ABC-123)解析为问题 ID
bash
python3 $SENTRY_API list-issues \
--org $SENTRY_ORG \
--project $SENTRY_PROJECT \
--query ABC-123 \
--limit 1
参数
| 标志 | 默认值 | 描述 |
|---|
| --org | $SENTRYORG | 组织标识符 |
| --project |
$SENTRYPROJECT | 项目标识符 |
| --time-range | 24h | 统计周期(例如 7d、30d) |
| --environment | prod | 环境过滤器 |
| --limit | 20 | 最大结果数(最多 50) |
| --query | | Sentry 搜索查询 |
| --base-url | https://sentry.io | 用于自托管 Sentry |
| --no-redact | | 禁用 PII 编辑 —
避免在共享/记录环境中使用 |
注意事项
- - PII(电子邮件、IP)默认被编辑
- 事件详情默认排除堆栈跟踪 — 仅在需要且信任环境时添加 --include-entries
- --no-redact 禁用 PII 编辑 — 避免在共享或记录环境中使用
- 对于自托管 Sentry,设置 SENTRYBASEURL 或使用 --base-url