tl;dr;
- SaaS版( https://sentry.io/ )を使ってる場合は sentry-raven から sentry-ruby へ移行推奨
- オンプレミス版を使ってる場合にはSentryが20.6.0以降じゃないとsentry-rubyは動かないので注意
経緯
正月休み中にRubyで趣味アプリを作っててSentryを導入しようとしたところ、いつもと違うセットアップ手順だったので気づきました。
詳しいこと
v3までがsentry-ravenでv4以降がsentry-rubyらしいです。
https://rubygems.org/gems/sentry-raven/versions
https://rubygems.org/gems/sentry-ruby/versions
先月上旬にはv4が出ていたらしい。
dependabotとかで自動bundle updateしてるだけだと絶対に気づかないやつ...
古いsentry-ravenについて
https://github.com/getsentry/sentry-ruby/tree/master/sentry-raven によると
Future Support: sentry-raven has entered maintenance mode, which means it won't receive any new feature supports or aggressive bug fixes.
とのことなので移行した方がよさそうです
新しいsentry-rubyについて
移行方法は https://docs.sentry.io/platforms/ruby/migration を参照。
注意点
社だとSaaS版ではなくオンプレミス版のSentryを自前でホスティングして運用してるのですが、社で使っているSentryのバージョンが古くてsentry-rubyが動かなくてハマりました。
詳しくは下記のissueを参照
https://github.com/getsentry/sentry-ruby/issues/1185#issuecomment-755441492 によると
in the new SDK we've switched the reporting endpoint from /store to /envelope, which requires 20.6.0 and above version if you use the on-premise installation.
とのこと。
余談:投げたパッチ一覧
同じgemでメジャーバージョンが上がったら気づくけどgemの名前が変わるとさすがに移行に気づかないので、gem install
後にdeprecation messageを出すPRを投げました。
【追記】マージされて3.1.2に入りました。
https://github.com/getsentry/sentry-ruby/blob/master/sentry-raven/CHANGELOG.md#312
あとついでに rake build
がコケる問題もついでに直してPR投げました。
上記パッチは2つともマージはされているんだけど、deprecatedなgemなのでいつリリースされるかは不明です
あとsentry-rubyの方も使ってて気になった箇所があったのでPR投げました。
こっちは4.1.5のマイルストーンに入ってるので順調に行けば次バージョンに入るかなと思ってます
マージされて4.1.5に入りました。
https://github.com/getsentry/sentry-ruby/blob/master/sentry-ruby/CHANGELOG.md#415