Sentry
跳转到导航
跳转到搜索
Sentry是一套搜集错误讯息的软件,或是对应的云端服务。
硬件
官方的GitHub页面上会更新目前最新版本需要的硬件规格。
官方推估每天处理四百万的事件,资料保留90天,大约需要1.5 TB的空间[1]。目前测过的版本(23.9.1)在跑一阵子后大约需要9GB的内存空间。
简介
Sentry提供SDK在用户端安装后就可以搜集错误资讯,并且在服务器上分类并提供界面让维护者可以确认情况。
安装
这边以Ubuntu 22.04为操作系统,需要先安装Docker与Docker Compose(要注意得安装Ubuntu套件库提供的版本),并且设定权限:
sudo apt install docker-compose
sudo groupadd -g 9000 service-sentry
sudo useradd -g 9000 -G docker -m -s /bin/bash -u 9000 service-sentry
然后装到service-sentry
下:
sudo su - service-sentry -c "git clone https://github.com/getsentry/self-hosted.git; cd self-hosted; git checkout 24.4.1; ./install.sh; docker compose up -d"
装完后会在Port 9000执行提供服务,可以透过nginx转发对应的连线需求。
升级
请务必先参考Self-Hosted Releases & Upgrading文件上的说明,有些版本是需要先升级到某个中间版本才能往后继续升级,像是目前看到的说明:
<your.sentry.version> -> 9.1.2 -> 21.5.0 -> 21.6.3 -> 23.6.2 -> latest
升级的方式是切到self-hosted
目录下跑./install.sh
:
cd self-hosted; docker compose down; git pull; git checkout 24.4.1; ./install.sh; docker compose up -d
设定
Google OAuth
参考Self-Hosted Single Sign-On (SSO)这边的设定:
- 需要先到Google端建立应用程序。
- 其中文章里没有提到的是Google端的
redirect_uri
设定需要设为https://sentry.example.com/auth/sso/
。
- 其中文章里没有提到的是Google端的
- 再把应用程序对应的client id与client secret填到
sentry/config.yml
内,停掉Sentry后跑./install.sh
,再重启Sentry。 - superuser的权限不好搞,建议先用
docker compose run --rm web sentry createuser
把自己账号建好再启用Google SSO。
Slack
参考Slack Integration这边的设定。
除错
可以先用docker-compose
的logs -f
看错误讯息:
docker-compose logs -f
参考文献
- ↑ Docs - Installation. [2019-04-22].
外部链接
- 官方网站 (英文)
- Sentry On-Premise setup (英文)
- Docs - Sentry Server (英文)