一、介绍

当前端代码在生产运行中出现错误的时候,第一时间传递给监控系统,从而第一时间定位并且解决问题。保证前端代码的稳定和安全,是项目可以健康的运行。

sentry 是一个开源的实时错误监控的项目,它支持很多端的配置,包括 web 前端、服务器端、移动端及其游戏端。

支持各种语言,例如 python、oc、java、node、javascript 等。也可以应用到各种不同的框架上面,如前端框架中的

vue 、angular 、react 等最流行的前端框架。提供了github、slack、trello 的常见的开发工具的集成。可以自己安装并且搭建 sentry 应用。

二、部署安装

官网: https://sentry.io 
文档: https://docs.sentry.io/clients/javascript/install/ 
git仓库: https://github.com/getsentry/sentry
社区除了git issue外还可以关注 https://forum.sentry.io/ 
1、官网提供了两种部署方案

在这里为了操作方便考虑,选择使用docker来部署搭建 sentry,这种方法的话需要安装 docker 和 docker-compose 。

2、部署 sentry

获取 sentry 代码,从 github 上面可以获取到最新的 sentry 代码

git clone https://github.com/getsentry/onpremise.git

获取到本地之后,进入目录onpremise

./install.sh

这个过程会建立管理账号

创建管理用户,如果没有创建可以手动创建

docker-compose run --rm web createuser

按照项目的 readme.md 开始依照步骤搭建。

docker-compose run --rm web config generate-secret-key

这里是生产密钥,SENTRY_SECRET_KEY

进入目录sentry/config.yml 修改里面的 SENTRY_SECRET_KEY;配置当前帐户的邮箱,以及web地址以及端口

# Use dummy if you want to disable email entirelymail.backend: 'smtp'
mail.host: 'smtp.qq.com'
mail.port: 587
mail.username: '123@qq.com'
# 邮箱授权码, 非邮箱密码(公司的是使用邮箱密码)
mail.password: '123'
mail.use-tls: true
# The email address to send on behalf of
mail.from: '123@qq.com'
# 请保持与域名严格一致
mail.list-namespace: 'sentry.yourdomain.com'

最后一步

docker-compose up -d

至此,我们监控系统的后端服务器已经跑起来了,访问本地的9000端口。

使用中途创建的 邮箱和密码登陆 我们的服务后端。

踩坑:

1、报错502,服务器需要3G内存以及20G硬盘空间;

2、接口报错502,检查nginx配置;

3、webhooks配置企业微信,需要单独接口服务转发,sentry传递的参数格式;

location / {
proxy_pass http://sentry;
proxy_redirect off;
proxy_set_header Host  $host;
}


参考 sentryhttps://juejin.cn/post/6974424800563298341#heading-6

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐