Skip to content

vishnu-narayanan/sntry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sntry

A fast incident triage CLI for Sentry. Built for engineers who need to investigate errors quickly from the terminal — not manage releases.

sntry fills the gap left by the official sentry-cli, which focuses on release management, sourcemaps, and debug symbols. sntry focuses on what you actually need during an incident: querying issues, viewing stacktraces, spotting trends, and tailing errors in real-time.

What sntry does that sentry-cli doesn't

Capability sentry-cli sntry
Sort issues by frequency/trends - issues list --sort freq
Issue details (count, first/last seen, sparkline) - issues show <id>
Tag distribution (which transactions, users, releases) - issues tags <id> transaction
Full stacktrace + breadcrumbs - events latest <id>
Error rate timeline with bar chart - stats -p my-project --since 6h
Trending issues (increasing frequency) - trends
Live-tail new errors - tail -p my-project

Install

Download binary (no Go required)

Download the latest binary for your platform from the Releases page:

# Linux (amd64)
curl -L https://github.com/vishnu-narayanan/sntry/releases/latest/download/sntry-linux-amd64 -o sntry
chmod +x sntry
sudo mv sntry /usr/local/bin/

# Linux (arm64)
curl -L https://github.com/vishnu-narayanan/sntry/releases/latest/download/sntry-linux-arm64 -o sntry
chmod +x sntry
sudo mv sntry /usr/local/bin/

# macOS (Apple Silicon)
curl -L https://github.com/vishnu-narayanan/sntry/releases/latest/download/sntry-darwin-arm64 -o sntry
chmod +x sntry
sudo mv sntry /usr/local/bin/

# macOS (Intel)
curl -L https://github.com/vishnu-narayanan/sntry/releases/latest/download/sntry-darwin-amd64 -o sntry
chmod +x sntry
sudo mv sntry /usr/local/bin/

With Go

go install github.com/vishnu-narayanan/sntry@latest

From source

git clone https://github.com/vishnu-narayanan/sntry.git
cd sntry
go build -o sntry .

Auth

sntry reads auth from the same places as sentry-cli — no extra setup needed:

  1. SENTRY_AUTH_TOKEN environment variable
  2. ~/.sentryclirc file
# ~/.sentryclirc
[auth]
token=sntrys_xxx

[defaults]
org=your-org
url=https://sentry.io

You can also pass --org and --auth-token flags to any command.

Usage

List issues

# Top errors by frequency in the last hour
sntry issues list --sort freq --since 1h

# Unresolved errors for a specific project
sntry issues list -p my-project --query "is:unresolved level:error"

# Search for a specific error type
sntry issues list --query "PG::QueryCanceled"

Show issue details

# Full details with 24h sparkline
sntry issues show 6841145901
MYAPP-A8Q ActiveRecord::ConnectionTimeoutError: could not obtain a connection...
────────────────────────────────────────────────────────────
  Level:      error
  Priority:   high
  Status:     unresolved (ongoing)
  Count:      32468 events
  Users:      0
  First seen: 2025-08-28T05:51:28Z (28 Aug 2025)
  Last seen:  2026-03-21T09:50:13Z (2h ago)
  Culprit:    Sidekiq/SomeWorkerJob

  24h trend:  ▂▆▁▃▁▃▂█▁▂▅▂▁▆▁▅▅▆▃▂▁▅▁▁▁

Tag distribution

# Which transactions trigger this error?
sntry issues tags 6841145901 transaction

# All tags summary
sntry issues tags 6841145901

View stacktraces

# Latest event for an issue — full stacktrace, tags, breadcrumbs
sntry events latest 6841145901

# Specific event by ID
sntry events show e6b7a873-7559-45eb-aa76-6e3dd0a4fb6e -p my-project

# List recent events
sntry events list 6841145901 --limit 10

Error rate timeline

# Bar chart of error volume over time
sntry stats -p my-project --since 6h --resolution 1h
  11:30     96  ██████████████
  12:30     79  ███████████
  13:30     87  █████████████
  14:30    140  █████████████████████
  15:30    185  ███████████████████████████
  16:30    265  ████████████████████████████████████████
  17:30    116  █████████████████

  Total: 968 events

Trending issues

# Issues with increasing error frequency
sntry trends --since 24h --limit 10

Live tail

# Watch for new errors in real-time
sntry tail -p my-project --poll 5s

# Filter while tailing
sntry tail -p my-project --query "level:fatal" --poll 10s

Global flags

Flag Short Description
--org -o Sentry organization slug
--project -p Sentry project slug
--format -f Output format: table, json, compact

All commands support --format json for piping to jq.

Shell completion

# bash
sntry completion bash > /etc/bash_completion.d/sntry

# zsh
sntry completion zsh > "${fpath[1]}/_sntry"

# fish
sntry completion fish > ~/.config/fish/completions/sntry.fish

License

MIT

About

Fast incident triage CLI for Sentry

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages