背景:
咱们在完成系统的设计或者业务的迭代上线后,除了须要关注业务数据、系统运行情况,每每还须要对系统业务异常进行监控,来避免有些边缘场景在开发或测试中没有判断到位,致使线上业务系统运行异常或者崩溃的情况,因此这正是咱们须要使用Sentry这样的异常日志监控工具的缘由。nginx
关于Sentry的介绍:git
Sentry 是一个开源的实时错误报告工具,支持 web 先后端、移动应用以及游戏,支持 Python、OC、Java、Go、Node.js、Django、RoR 等主流编程语言和框架 ,还提供了 GitHub、Slack、Trello 等常见开发工具的集成。
反正总结起来就是一个支持多种语言的异常监控工具,并且免费 开源 好用github
Docker极速镜像:https://get.daocloud.io/#inst...web
1.Docker安装docker
curl -sSL https://get.daocloud.io/docker | sh
2.Docker Compose 安装编程
curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
3.安装成功后端
root@sentry:~# docker -v Docker version 19.03.1, build 74b1e89 root@sentry:~# docker-compose -v docker-compose version 1.24.1, build 4667896b
1.拉取onpremise框架
git clone https://github.com/getsentry/onpremise.git
2.建立项目目录dom
cd onpremise && mkdir -p data/{sentry,postgres}
3.复制相应的环境配置文件curl
cp .env.example .env
4.生成secret key
在此步骤安装遇到问题,请跳到步骤10查看常看法决方案.
docker-compose run --rm web config generate-secret-key
5.执行完成后会得到密匙,填写环境密匙
SENTRY_SECRET_KEY=tu!+5dwv5box8pm*1-=idgik%5=@odaot=wi9q^6!d&d&9*uee SENTRY_IMAGE=sentry:9.1.2
6.更新配置及建立超级管理员用户
docker-compose run --rm web upgrade
7.启动服务运行
docker-compose up -d
8.添加邮件配置到.env文件中
SENTRY_EMAIL_HOST=smtp.mailgun.org SENTRY_EMAIL_PORT=587 //端口 SENTRY_SERVER_EMAIL=你的邮箱地址 SENTRY_EMAIL_USER=邮箱帐号 SENTRY_EMAIL_PASSWORD=邮箱密码 SENTRY_EMAIL_USE_TLS=true //启动TLS传输
9.更改须要重启docker
docker-compose down && docker-compose up -d
10.安装期间遇到场景问题及解决方案
若是安装期间出现如下这样的错误的话,记得手动执行该命令建立
ERROR: Volume sentry-data declared as external, but could not be found. Please create the volume manually using `docker volume create --name=sentry-data` and try again 执行:docker volume create --name=sentry-data ERROR: Volume sentry-postgres declared as external, but could not be found. Please create the volume manually using `docker volume create --name=sentry-postgres` and try again. 执行:docker volume create --name=sentry-postgres
若是执行到最后出现该错误
ERROR: Service 'web' failed to build: invalid reference format
请在你的.env环境文件中添加
SENTRY_IMAGE=sentry:9.1.2
12.nginx反向代理端口转发
server { listen 80; server_name yourdomain.com location / { proxy_pass http://127.0.0.1:9000; } }
最终搭建完善的效果:
异常监控:
邮箱提醒:
以上就是Sentry部署的教程了,全程环境使用Ubuntu+Docker进行部署完成的,若是各位同窗对这个有兴趣能够一块儿沟通哦。