Sentry에서 Rails 앱 오류 추적
계약
아래에서 계약
htps : // 센트리. 이오/시그누 p/
계약시에 프로젝트를 작성하게 되어, 프로젝트 작성 후의 화면에 셋업 방법이 쓰여져 있으므로, 순서대로 진행해 나가면 문제 없을 것. 다만 마음을 위해 자신처럼 정리합니다.
기본 사용법
Gemfile
gem "sentry-raven"
$ bundle install
config/application.rb
module AppName
class Application < Rails::Application
# 省略
Raven.configure do |config|
config.dsn = "https://#{ENV['SENTRY_KEY']}@#{ENV['SENTRY_SECRET']}.sentry.io/#{ENV['SENTRY_ID']}"
end
end
end
Sentry의 사이트에서 표시되는 설정 방법에는 ID 등이 모두 직접 작성되어 있으므로 환경 변수로 버렸습니다.
매개변수 및 세션 정보를 데리러
app/controllers/application.rb
class ApplicationController < ActionController::Base
before_action :set_raven_context
private
def set_raven_context
Raven.user_context(id: session[:current_user_id]) # or anything else in session
Raven.extra_context(params: params.to_unsafe_h, url: request.url)
end
end
비밀번호를 일반 텍스트로 기록하지 않음
$ touch config/initializers/sentry.rb
config/initializers/sentry.rb
Raven.configure do |config|
config.sanitize_fields = Rails.application.config.filter_parameters.map(&:to_s)
end
프로덕션 환경의 오류만 참조
디폴트라면 개발 환경의 에러도 모두 일람으로 표시되어 버리므로 설정을 수정합니다.
Settings > Projects > 프로젝트 이름 > Environments > production 이외의 환경을
hide
(2020/10/07 추가)
상기의 방법이라고 개발 환경의 에러도 메일등으로 통지되어 버립니다.
단순히 개발 환경의 SENTRY용 API 키를 삭제하면 개발 환경의 오류가 캡처되지 않습니다.
참고
기타
UI가 굉장히 Slack 웃음
Reference
이 문제에 관하여(Sentry에서 Rails 앱 오류 추적), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/d0ne1s/items/a5f13247f3719aa4f3ca텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)