Sentry

来自Gea-Suan Lin's Wiki
跳转到导航 跳转到搜索

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端建立应用程序。
  • 再把应用程序对应的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-composelogs -f看错误讯息:

docker-compose logs -f

参考文献

  1. Docs - Installation. [2019-04-22]. 

外部链接