Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计通过

sentry-ruby-sdkSentry Ruby SDK 搜索

Agent Skill

sentry-ruby-sdk 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,658

周安装

113

GitHub Stars

19

下载量

931
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:sentry-ruby-sdk(Sentry Ruby SDK 搜索)
来源仓库:https://github.com/getsentry/sentry-agent-skills
仓库路径:skills/sentry-ruby-sdk
安装命令:
npx skills add https://github.com/getsentry/sentry-agent-skills --skill sentry-ruby-sdk
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/getsentry/sentry-agent-skills --skill sentry-ruby-sdk

简介

sentry-ruby-sdk 用于查找、检索和筛选相关信息,适合快速定位候选结果。

  • 适用于需要根据关键词或任务场景从来源线索中筛选信息的场景。
  • 通过 npx skills add 命令安装指定 GitHub 仓库中的技能模块。
  • 安装前需确认权限范围和维护状态,注意可能触发联网或文件读写操作。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Sentry Ruby SDK

Opinionated wizard that scans the project and guides through complete Sentry setup.

Invoke This Skill When

  • User asks to "add Sentry to Ruby" or "set up Sentry" in a Ruby app
  • User wants error monitoring, tracing, logging, metrics, profiling, or crons in Ruby
  • User mentions sentry-ruby, sentry-rails, or the Ruby Sentry SDK
  • User is migrating from AppSignal, Honeybadger, Bugsnag, Rollbar, or Airbrake to Sentry
  • User wants to monitor exceptions, HTTP requests, or background jobs in Rails/Sinatra
Note: SDK APIs below reflect sentry-ruby v6.4.0. Always verify against docs.sentry.io/platforms/ruby/ before implementing.

Phase 1: Detect

# Existing Sentry gems
grep -i sentry Gemfile 2>/dev/null

# Framework
grep -iE '\brails\b|\bsinatra\b' Gemfile 2>/dev/null

# Web server — Puma triggers queue time guidance
grep -iE '\bpuma\b' Gemfile 2>/dev/null

# Background jobs
grep -iE '\bsidekiq\b|\bresque\b|\bdelayed_job\b' Gemfile 2>/dev/null

# Competitor monitoring tools — triggers migration path if found
grep -iE '\bappsignal\b|\bhoneybadger\b|\bbugsnag\b|\brollbar\b|\bairbrake\b' Gemfile 2>/dev/null

# Scheduled jobs — triggers Crons recommendation
grep -iE '\bsidekiq-cron\b|\bclockwork\b|\bwhenever\b|\brufus-scheduler\b' Gemfile 2>/dev/null
grep -rn "Sidekiq::Cron\|Clockwork\|every.*do" config/ lib/ --include="*.rb" 2>/dev/null | head -10

# OpenTelemetry tracing — check for SDK + instrumentations
grep -iE '\bopentelemetry-sdk\b|\bopentelemetry-instrumentation\b' Gemfile 2>/dev/null
grep -rn "OpenTelemetry::SDK\.configure\|\.use_all\|\.in_span" config/ lib/ app/ --include="*.rb" 2>/dev/null | head -5

# OpenTelemetry logging — check for logs SDK (much less common in Ruby)
grep -iE '\bopentelemetry-logs-sdk\b|\bopentelemetry-logs-api\b' Gemfile 2>/dev/null
grep -rn "OpenTelemetry::Logs" config/ lib/ app/ --include="*.rb" 2>/dev/null | head -5

# Existing metric patterns (StatsD, Datadog, Prometheus)
grep -rE "(statsd|dogstatsd|prometheus|\.gauge|\.histogram|\.increment|\.timing)" \
  app/ lib/ --include="*.rb" 2>/dev/null | grep -v "_spec\|_test" | head -20

# Companion frontend
cat package.json frontend/package.json web/package.json 2>/dev/null | grep -E '"@sentry|"sentry-'

Route from what you find:

  • Competitor detected (appsignal, honeybadger, bugsnag, rollbar, airbrake) → load ${SKILL_ROOT}/references/migration.md first; delete the competitor initializer as part of migration
  • Sentry already present → skip to Phase 2 to configure features
  • Rails → use sentry-rails + config/initializers/sentry.rb
  • Rack/Sinatrasentry-ruby + Sentry::Rack::CaptureExceptions middleware
  • Sidekiq → add sentry-sidekiq; recommend Metrics if existing metric patterns found
  • Puma detected → queue time capture is automatic (v6.4.0+), but the reverse proxy must set X-Request-Start header; see ${SKILL_ROOT}/references/tracing.md → "Request Queue Time"
  • OTel tracing detected (opentelemetry-sdk + instrumentations in Gemfile, or OpenTelemetry::SDK.configure in source) → use OTLP path: config.otlp.enabled = true; do not set traces_sample_rate; Sentry links errors to OTel traces automatically
  • OTel logging detected (opentelemetry-logs-sdk in Gemfile, or OpenTelemetry::Logs in source) → skip enable_logs; OTel handles log export
  • OTel tracing present but NOT logging (the common case) → use OTLP for tracing and Sentry native enable_logs: true for logging

Phase 2: Recommend

Lead with a concrete proposal — don't ask open-ended questions:

FeatureRecommend when...
Error MonitoringAlways
OTLP IntegrationOTel tracing detected — replaces native Tracing
TracingRails / Sinatra / Rack / any HTTP framework; skip if OTel tracing detected
LoggingAlwaysenable_logs: true costs nothing; skip only if OTel logging detected
MetricsSidekiq present; existing metric lib (StatsD, Prometheus) detected
Profiling⚠️ Beta — performance profiling requested; requires stackprof or vernier gem
CronsScheduled jobs detected (ActiveJob, Sidekiq-Cron, Clockwork, Whenever)

OTel tracing + no OTel logging (the common case): *"I see OpenTelemetry tracing in the project. I recommend Sentry's OTLP integration for tracing (via your existing OTel setup) + Error Monitoring + Sentry Logging [+ Metrics/Crons if applicable]. Shall I proceed?"*

OTel tracing + OTel logging: *"I see OpenTelemetry handling both tracing and logging. I recommend Sentry's OTLP integration + Error Monitoring [+ Metrics/Crons if applicable]. Shall I proceed?"*

No OTel: *"I recommend Error Monitoring + Tracing + Logging [+ Metrics if applicable]. Shall I proceed?"*


Phase 3: Guide

Install

Rails:

# Gemfile
gem "sentry-ruby"
gem "sentry-rails"
gem "sentry-sidekiq"      # if using Sidekiq
gem "sentry-resque"       # if using Resque
gem "sentry-delayed_job"  # if using DelayedJob

Rack / Sinatra / plain Ruby:

gem "sentry-ruby"

Run bundle install.

Framework Integration

Framework / RuntimeGemInit locationAuto-instruments
Railssentry-railsconfig/initializers/sentry.rbControllers, ActiveRecord, ActiveJob, ActionMailer
Rack / Sinatrasentry-rubyTop of config.ruRequests (via Sentry::Rack::CaptureExceptions middleware)
Sidekiqsentry-sidekiqSentry initializer or Sidekiq configWorker execution → transactions
Resquesentry-resqueSentry initializerWorker execution → transactions
DelayedJobsentry-delayed_jobSentry initializerJob execution → transactions

Init — Rails (config/initializers/sentry.rb)

Sentry.init do |config|
  config.dsn = ENV["SENTRY_DSN"]
  config.spotlight = Rails.env.development?  # local Spotlight UI; no DSN needed in dev
  config.breadcrumbs_logger = [:active_support_logger, :http_logger]
  config.send_default_pii = true
  config.traces_sample_rate = 1.0  # lower to 0.05–0.2 in production
  config.enable_logs = true
  # Metrics on by default; disable with: config.enable_metrics = false
end

sentry-rails auto-instruments ActionController, ActiveRecord, ActiveJob, ActionMailer.

Init — Rack / Sinatra

require "sentry-ruby"

Sentry.init do |config|
  config.dsn = ENV["SENTRY_DSN"]
  config.spotlight = ENV["RACK_ENV"] == "development"
  config.breadcrumbs_logger = [:sentry_logger, :http_logger]
  config.send_default_pii = true
  config.traces_sample_rate = 1.0
  config.enable_logs = true
end

use Sentry::Rack::CaptureExceptions  # in config.ru, before app middleware

Init — Sidekiq standalone

require "sentry-ruby"
require "sentry-sidekiq"

Sentry.init do |config|
  config.dsn = ENV["SENTRY_DSN"]
  config.spotlight = ENV.fetch("RAILS_ENV", "development") == "development"
  config.breadcrumbs_logger = [:sentry_logger]
  config.traces_sample_rate = 1.0
  config.enable_logs = true
end

Environment variables

SENTRY_DSN=https://xxx@oYYY.ingest.sentry.io/ZZZ
SENTRY_ENVIRONMENT=production   # overrides RAILS_ENV / RACK_ENV
SENTRY_RELEASE=my-app@1.0.0

Feature reference files

Walk through features one at a time. Load the reference file for each, follow its steps, and verify before moving to the next:

FeatureReference fileLoad when...
Migration${SKILL_ROOT}/references/migration.mdCompetitor gem found — load before installing Sentry
Error Monitoring${SKILL_ROOT}/references/error-monitoring.mdAlways
Tracing${SKILL_ROOT}/references/tracing.mdHTTP handlers / distributed tracing
Logging${SKILL_ROOT}/references/logging.mdStructured log capture
Metrics${SKILL_ROOT}/references/metrics.mdSidekiq present; existing metric patterns
Profiling${SKILL_ROOT}/references/profiling.mdPerformance profiling requested (beta)
Crons${SKILL_ROOT}/references/crons.mdScheduled jobs detected or requested

For each feature: Read ${SKILL_ROOT}/references/<feature>.md, follow steps exactly, verify it works.


Configuration Reference

Key Sentry.init Options

OptionTypeDefaultPurpose
dsnStringnilSDK disabled if empty; env: SENTRY_DSN
environmentStringnile.g., "production"; env: SENTRY_ENVIRONMENT
releaseStringnile.g., "myapp@1.0.0"; env: SENTRY_RELEASE
spotlightBooleanfalseSend events to Spotlight sidecar (local dev, no DSN needed)
send_default_piiBooleanfalseInclude IP addresses and request headers
sample_rateFloat1.0Error event sample rate (0.0–1.0)
traces_sample_rateFloatnilTransaction sample rate; nil disables tracing
profiles_sample_rateFloatnilProfiling rate relative to traces_sample_rate; requires stackprof or vernier
enable_logsBooleanfalseEnable Sentry structured Logs
enable_metricsBooleantrueEnable custom metrics (on by default)
breadcrumbs_loggerArray[]Loggers for automatic breadcrumbs (see logging reference)
max_breadcrumbsInteger100Max breadcrumbs per event
debugBooleanfalseVerbose SDK output to stdout
capture_queue_timeBooleantrueRecord request queue time from X-Request-Start header (v6.4.0+)
otlp.enabledBooleanfalseRoute OTel spans to Sentry via OTLP; do not combine with traces_sample_rate
before_sendLambdanilMutate or drop error events before sending
before_send_transactionLambdanilMutate or drop transaction events before sending
before_send_logLambdanilMutate or drop log events before sending

Environment Variables

VariableMaps toPurpose
SENTRY_DSNdsnData Source Name
SENTRY_RELEASEreleaseApp version (e.g., my-app@1.0.0)
SENTRY_ENVIRONMENTenvironmentDeployment environment

Options set in Sentry.init override environment variables.


Verification

Local dev (no DSN needed) — Spotlight:

npx @spotlightjs/spotlight          # browser UI at http://localhost:8969
# or stream events to terminal:
npx @spotlightjs/spotlight tail traces --format json

config.spotlight = Rails.env.development? (already in the init block above) routes events to the local sidecar automatically.

With a real DSN:

Sentry.capture_message("Sentry Ruby SDK test")

Nothing appears? Set config.debug = true and check stdout. Verify DSN format: https://<key>@o<org>.ingest.sentry.io/<project>.


Phase 4: Cross-Link

cat package.json frontend/package.json web/package.json 2>/dev/null | grep -E '"@sentry|"sentry-'
Frontend detectedSuggest
React / Next.jssentry-react-sdk
Svelte / SvelteKitsentry-svelte-sdk
Vue@sentry/vuedocs.sentry.io/platforms/javascript/guides/vue/

For trace stitching between Ruby backend and JS frontend, see references/tracing.md → "Frontend trace stitching".


Troubleshooting

IssueSolution
Events not appearingconfig.debug = true; verify DSN; ensure Sentry.init before first request
Rails exceptions missingMust use sentry-railssentry-ruby alone doesn't hook Rails error handlers
No traces (native)Set traces_sample_rate > 0; ensure sentry-rails or Sentry::Rack::CaptureExceptions
No traces (OTLP)Verify opentelemetry-exporter-otlp gem is installed; do not set traces_sample_rate when using otlp.enabled = true
Sidekiq jobs not tracedAdd sentry-sidekiq gem
Missing request contextSet config.send_default_pii = true
Logs not appearingSet config.enable_logs = true; sentry-ruby ≥ 5.27.0 required
Metrics not appearingCheck enable_metrics is not false; verify DSN
Events lost on shutdownProcess.exit! skips at_exit hooks — call Sentry.flush explicitly before forced exits
Forking server loses eventsPuma/Unicorn fork workers — re-initialize in on_worker_boot or after_fork; without this, the background worker thread dies in child processes
DSN rejected / events not deliveredVerify DSN format: https://<key>@o<org>.ingest.sentry.io/<project>; set config.debug = true to see transport errors

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.68%
按下载量换算323

Claude

29.91%
按下载量换算278

Cursor

21.64%
按下载量换算201

Gemini CLI

9.41%
按下载量换算88

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills