当你发布部署一个release版本的代码到环境中。当你给Sentry你的release信息,你将打开一些新的功能:
1、确定新release中引入的问题和回归
2、预测哪个commit 导致了一个问题,谁可能负责
3、通过在commit message中包含issue number 来解决问题
4、部署代码时接收电子邮件通知
此外,release还用于将source map 映射到 minified javascript以查看原始代码。未转换的源代码。
发布Release
三个步骤:
1、配置你的SDK
2、创建Release和关联Commits
3、告诉Sentry你部署了新的Release
1、配置你的SDK
参考:(1)JavaScript的配置步骤
(2) 再看你的框架配置步骤,选择是React、Vue、React Native等
也可以先跳过,了解下整个流程,再回看详细配置。
2、创建Release和关联Commits
创建Release
有两种方式:(1)使用存储库集成(推荐)
(2)手动向Sentry提供自己的提交metadata(元数据)。
链接存储库(gitlab为例)
home (用户主页)> Settings(设置) > Integrations.(集成)
按下图操作,sentry都有步骤指引导
如果添加有问题,可以尝试 disconnect 或者 reconnect,
也有可能是权限问题 roles in Sentry.
注意:!!!
如果是团队开发,需要分配用户权限,可以参考 roles in Sentry.
Commits关联一个Release
两种方式:
- 使用Sentry CLI
- 使用API
(1)使用Sentry CLI
点击查找 [Auth Tokens](https://docs.sentry.io/api/auth/#auth-tokens)
export SENTRY_AUTH_TOKEN=...
export SENTRY_ORG=my-org
VERSION=$(sentry-cli releases propose-version)
# Create a release
sentry-cli releases new -p project1 -p project2 $VERSION
# Associate commits with the release
sentry-cli releases set-commits --auto $VERSION
React Native
与js不同,RN 打包会自动上传.js 和source map,因此只需要关联releases的版本即可,注意: RN 的VERSION 要自己指定, 例:VERSION 的版本号,一定要写对,release的列表,可以查看之前的issue版本,如果使用了codepush修改了版本号,一般版本组合为:bundleId+app版本号+codepush版本号,如下面的例子 sentry-cli releases set-commits --auto com.company.name-1.0-codepush:v1
注意事项:
--auto
代表自动关联git 的 commit ,如果你之前上传了commit版本,而此次没有commit ,commit 的存储库就没有展示数据。
(2)使用API
暂略。参考:create-release
3、发布release
在部署发布时通知Sentry,将自动向已承诺部署发布的Sentry用户发送电子邮件。
// 同时指定环境
sentry-cli releases deploys VERSION new -e ENVIRONMENT