概要
- 2019年末ごろに、Sentry上のエラーとリリースを関連付けられる機能が付いていました。
- これにより、エラーとリリースの関連付けができるようになります。
- 基本的にこのページの内容を踏襲してCircleCIにてdeployが終わった後にSentryに通知するように設定してみました。
コード
- .circleci/config.ymlの抜粋です。
- CircleCIのWorkflowを使っている場合はサンプルコードをそのまま使えないので、色々変更しています。
- SENTRY_AUTH_TOKENをCircleCIの環境変数に設定しておく必要があります。
version: 2.1 commands: <snip> sentry_setup_create_release: steps: - run: | curl -sL https://sentry.io/get-cli/ | bash export SENTRY_RELEASE=$(sentry-cli releases propose-version) sentry-cli releases new -p $SENTRY_PROJECT $SENTRY_RELEASE sentry-cli releases set-commits --auto $SENTRY_RELEASE sentry-cli releases finalize $SENTRY_RELEASE jobs: create-sentry-production-release: docker: - image: circleci/node:latest environment: SENTRY_ORG: <YOUR_ORGANIZATION> SENTRY_PROJECT: <YOUR_PROJECT_NAME> SENTRY_AUTH_TOKEN: ${SENTRY_AUTH_TOKEN} steps: - checkout - sentry_setup_create_release create-sentry-development-release: docker: - image: circleci/node:latest environment: SENTRY_ORG: <YOUR_ORGANIZATION> SENTRY_PROJECT: <YOUR_PROJECT_NAME> SENTRY_AUTH_TOKEN: ${SENTRY_AUTH_TOKEN} steps: - checkout - sentry_setup_create_release workflows: version: 2 build-deploy: jobs: <snip> - create-sentry-production-release: requires: - deploy-production filters: branches: only: master <snip> - create-sentry-development-release: requires: - deploy-development filters: branches: only: develop
CircleCI上でbuildが成功すれば以下のような表示になります。実行時間は16秒。
Sentry上での表示は以下のような感じになります。
エラーが無いからわかりませんがリリース後に出たエラーはここに表示されるようです。便利!
関連ページ
CircleCIのorbがあって使えそうなのですが、なんか使えなかったので今回は自前でstepを書いています。
- https://circleci.com/orbs/registry/orb/adhawk/sentry-release
- https://circleci.com/orbs/registry/orb/mcquaig/sentry-release
Next step
- このあたりをやって、JavascriptのSDKからもバージョンを送る必要があるっぽい?
Releases
Learn how to provide information to Sentry about your releases to determine regressions and resolve issues quickly.
Comments