前言
sentry是時下不可多得的一款保證項目質量與健康的監(jiān)控工具庐舟,受到開發(fā)團隊青睞。具有以下突出特點:
- 利用sourcemap還原源碼姜钳,精確定位錯誤堆棧
- 保留現(xiàn)場記錄錯誤發(fā)生時的用戶行為
- 配置郵件預警策略和閾值實時提醒
- 數(shù)據(jù)統(tǒng)計報表
Server安裝
官方最新版推薦使用Docker安裝拭抬,要求Docker 17.05.0+吟逝,Compose 1.19.0+,另外推薦Python版本為2.7占业,docker安裝這里不再多述,使用下述命令確認是否已安裝及版本:
docker -v
docker-compose -v
拉sentry安裝代碼到本地:
git clone https://github.com/getsentry/onpremise.git
執(zhí)行腳本一步到位:
cd onpremise
./install.sh
啟動相關容器:
docker-compose up -d
期間有交互可設置admin賬號绒怨,最后瀏覽器輸入地址纯赎,默認端口為9000谦疾,安裝完成
值得注意的地方是sentry有一份配置文件config.yml放在onpremise/sentry里,安裝前可以預先修改配置項犬金。如果安裝后再想修改配置請遵循以下步驟:
再已企業(yè)微信郵箱為例:
# mail.backend: 'smtp' # Use dummy if you want to disable email entirely
mail.host: 'smtp.exmail.qq.com'
mail.port: 587
mail.username: 'ab@cd.com'
mail.password: 'xxxx' // 密碼不是企業(yè)微信的登錄密碼疗疟,而是 設置–微信綁定–安全登錄–客戶端專用密碼
mail.use-tls: true
# The email address to send on behalf of
mail.from: 'ab@cd.com'
保存config.yml,在onpremise目錄瞳氓,執(zhí)行:
docker-compose build
docker-compose run --rm web upgrade
docker-compose up -d
項目接入sentry
- 在sentry平臺新建project策彤,會有接入提示
- 項目中執(zhí)行:
npm install @sentry/browser --save
- 項目入口文件添加代碼:
import * as Sentry from '@sentry/browser';
Sentry.init({dsn: "http://序列號@ip地址:9000/數(shù)字"});
運行項目,如有報錯信息就可以在sentry平臺中搜集到匣摘。
項目上傳sourcemap
- 項目中執(zhí)行:
npm install @sentry/webpack-plugin --save-dev
- 添加webpack插件店诗,類似代碼:
new SentryWebpackPlugin({
include: './build', // 代碼生成位置
}
- 根目錄創(chuàng)建.sentryclirc文件,內(nèi)容:
[defaults]
url = url地址
org = 組織名
project = 項目名
[auth]
token = 授權令牌
授權令牌再網(wǎng)站獲取音榜,勾選project:write:
webpack打包時會自動上傳目錄下的所有.map文件到sentry服務器上庞瘸,前提是要生成sourcemap文件,如遇權限問題赠叼,可查看掛載位置:
docker inspect sentry-data
cd /home/data/docker/volumes/sentry-data/_data
chmod 777 .
cd files
chmod 777 -R .
上傳成功后擦囊,就可以在平臺上看到對應版本的錯誤源碼了。
配置
為了方便使用嘴办,可以先設置語言和時區(qū):