Skip Navigation
Show nav
Heroku Dev Center
  • Get Started
  • Documentation
  • Changelog
  • Search
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
  • Documentation
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log inorSign up
View categories

Categories

  • Heroku Architecture
    • Dynos (app containers)
    • Stacks (operating system images)
    • Networking & DNS
    • Platform Policies
    • Platform Principles
  • Command Line
  • Deployment
    • Deploying with Git
    • Deploying with Docker
    • Deployment Integrations
  • Continuous Delivery
    • Continuous Integration
  • Language Support
    • Node.js
    • Ruby
      • Working with Bundler
      • Rails Support
    • Python
      • Working with Django
      • Background Jobs in Python
    • Java
      • Working with Maven
      • Java Database Operations
      • Java Advanced Topics
      • Working with Spring Boot
    • PHP
    • Go
      • Go Dependency Management
    • Scala
    • Clojure
  • Databases & Data Management
    • Heroku Postgres
      • Postgres Basics
      • Postgres Getting Started
      • Postgres Performance
      • Postgres Data Transfer & Preservation
      • Postgres Availability
      • Postgres Special Topics
    • Heroku Data For Redis
    • Apache Kafka on Heroku
    • Other Data Stores
  • Monitoring & Metrics
    • Logging
  • App Performance
  • Add-ons
    • All Add-ons
  • Collaboration
  • Security
    • App Security
    • Identities & Authentication
    • Compliance
  • Heroku Enterprise
    • Private Spaces
      • Infrastructure Networking
    • Enterprise Accounts
    • Enterprise Teams
    • Heroku Connect (Salesforce sync)
      • Heroku Connect Administration
      • Heroku Connect Reference
      • Heroku Connect Troubleshooting
    • Single Sign-on (SSO)
  • Patterns & Best Practices
  • Extending Heroku
    • Platform API
    • App Webhooks
    • Heroku Labs
    • Building Add-ons
      • Add-on Development Tasks
      • Add-on APIs
      • Add-on Guidelines & Requirements
    • Building CLI Plugins
    • Developing Buildpacks
    • Dev Center
  • Accounts & Billing
  • Troubleshooting & Support
  • Integrating with Salesforce
  • Add-ons
  • All Add-ons
  • Sentry
Sentry

This add-on is operated by Sentry

See what matters, solve quicker, and learn about your applications.

Sentry

Last updated September 14, 2023

Table of Contents

  • Provisioning the add-on
  • Integrating with Ruby (or Rails 3.x)
  • Integrating with Python (or Django)
  • Viewing Sentry
  • Notifications
  • Removing the add-on

Sentry is a realtime event logging and aggregation platform. It specializes in monitoring errors and extracting all the information needed to do a proper post-mortem without any of the hassle of the standard user feedback loop.

Provisioning the add-on

Reference the Sentry Elements Page for a list of available plans and regions.

Start by adding the Sentry addon:

$ heroku addons:create sentry

Integrating with Ruby (or Rails 3.x)

If you’re only using Ruby, add the sentry-ruby gem to your Gemfile:

gem 'sentry-ruby'

If you’re also using Rails, add both the sentry-ruby and sentry-rails gems to your Gemfile:

gem 'sentry-ruby'
gem 'sentry-rails'

In Rails we will automatically pick up unhandled exceptions and send them to Sentry. For other platforms you can wrap your code to manually log the exceptions:

begin
  1 / 0
rescue ZeroDivisionError => exception
  Sentry.capture_exception(exception)
end

If you’re not running with the “production” environment, you’ll need to manually specify that by calling out to Sentry:

Sentry.init do |config|
    config.current_environment = 'production'
end

Integrating with Python (or Django)

Sentry configures the integration during library initialization.

import os
import sentry_sdk
sentry_sdk.init(os.environ['SENTRY_DSN'])

If you’re using Django, initialize it with the Django integration in your settings.py file:

import os
import sentry_sdk
from sentry_sdk.integrations.django import DjangoIntegration

sentry_sdk.init(
    dsn=os.environ['SENTRY_DSN'],
    integrations=[DjangoIntegration()]
)

In any platform, you can explicitly capture an error using the captureException method:

from sentry_sdk import capture_exception

try:
    a_potentially_failing_function()
except Exception as e:
    # Alternatively the argument can be omitted
    capture_exception(e)

If you are just looking to generate a test exception, you can do that via the sentry_sdk CLI:

sentry_sdk test `heroku config:get SENTRY_DSN`

Viewing Sentry

Heroku provides an easy interface for logging into the Sentry web UI:

$ heroku addons:open sentry

Notifications

Sentry sends you notifications regarding workflow activities, release deploys, and quota usage, as well as weekly reports. For email notifications, add members to your Sentry organization in Organization Settings > Members.

Removing the add-on

Just as provisioning, this is done through the addons interface:

$ heroku addons:destroy sentry

Keep reading

  • All Add-ons

Feedback

Log in to submit feedback.

Yahoo BOSS API SFTP To Go - Cloud storage with SFTP, FTPS and S3 access

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Podcasts
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing
  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Heroku Podcasts
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Facebook
  • Instagram
  • Github
  • LinkedIn
  • YouTube
Heroku is acompany
  • heroku.com
  • Terms of Service
  • Privacy (日本語)
  • Cookies
  • Cookie Preferences
  • Your Privacy Choices
  • © 2023 Salesforce.com