1.49
The project is in a healthy, maintained state
A gem that provides a client interface for the Sentry error logger
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Sentry

Bad software is everywhere, and we're tired of it. Sentry is on a mission to help developers write better software faster, so we can get back to enjoying technology. If you want to join us Check out our open positions

Sentry SDK for Ruby

Current version Build Coverage API doc
Gem Version Build Status Coverage Status API doc
Gem Version Build Status Coverage Status API doc
Gem Version Build Status Coverage Status API doc
Gem Version Build Status Coverage Status API doc
Gem Version Build Status Coverage Status API doc
Gem Version Build Status Coverage Status API doc

Migrate From sentry-raven

The old sentry-raven client has entered maintenance mode and was moved to here.

If you're using sentry-raven, we recommend you to migrate to this new SDK. You can find the benefits of migrating and how to do it in our migration guide.

Requirements

We test from Ruby 2.4 to Ruby 3.2 at the latest patchlevel/teeny version. We also support JRuby 9.0.

If you use self-hosted Sentry, please also make sure its version is above 20.6.0.

Getting Started

Install

gem "sentry-ruby"

and depends on the integrations you want to have, you might also want to install these:

gem "sentry-rails"
gem "sentry-sidekiq"
gem "sentry-delayed_job"
gem "sentry-resque"
gem "sentry-opentelemetry"

Configuration

You need to use Sentry.init to initialize and configure your SDK:

Sentry.init do |config|
  config.dsn = "MY_DSN"
end

To learn more about available configuration options, please visit the official documentation.

Performance Monitoring

You can activate performance monitoring by enabling traces sampling:

Sentry.init do |config|
  # set a uniform sample rate between 0.0 and 1.0
  config.traces_sample_rate = 0.2
  # you can also use traces_sampler for more fine-grained sampling
  # please click the link below to learn more
end

To learn more about sampling transactions, please visit the official documentation.

Integrations

Enriching Events

Resources

  • Ruby docs
  • Forum
  • Discord Chat
  • Stack Overflow
  • Twitter Follow

Contributing to the SDK

Please make sure to read the CONTRIBUTING.md before making a pull request.

Thanks to everyone who has contributed to this project so far.