「Sentry」:修訂間差異

出自Gea-Suan Lin's Wiki
跳至導覽 跳至搜尋
 
(未顯示同一使用者於中間所作的 47 次修訂)
行 4: 行 4:


 官方推估每天處理四百萬的事件,資料保留90天,大約需要1.5 TB的空間<ref>{{Cite web |url=https://docs.sentry.io/server/installation/ |title=Docs - Installation |accessdate=2019-04-22}}</ref>。
 官方推估每天處理四百萬的事件,資料保留90天,大約需要1.5 TB的空間<ref>{{Cite web |url=https://docs.sentry.io/server/installation/ |title=Docs - Installation |accessdate=2019-04-22}}</ref>。
目前最新版(23.9.1)在跑一陣子後大約需要9GB的記憶體空間。


== 簡介 ==
== 簡介 ==
行 9: 行 11:
Sentry提供SDK在用戶端安裝後就可以蒐集錯誤資訊,並且在伺服器上分類並提供介面讓維護者可以確認情況。
Sentry提供SDK在用戶端安裝後就可以蒐集錯誤資訊,並且在伺服器上分類並提供介面讓維護者可以確認情況。


=== Python 3 ===
== 安裝 ==


  目前Sentry的伺服器端使用[[Python]] 2.7開發 目前不支援Python 3),而且沒有任何計畫開發Python 3 的版本, 由於Python 2預 在2020年後將不會有安全性更新,這是目前社群比較擔心的問題。
  這邊以[[Ubuntu]] 22.04為作業系統,需要先安裝[[Docker]]與Docker Compose 要注意得安裝Ubuntu套件庫提供 的版本 並且設 權限:


== 安裝 ==
<syntaxhighlight lang="bash">
sudo apt install docker-compose
</syntaxhighlight>
 
<syntaxhighlight lang="bash">
sudo groupadd -g 9000 service-sentry
sudo useradd -g 9000 -G docker -m -s /bin/bash -u 9000 service-sentry
</syntaxhighlight>


  這邊以[[Ubuntu]] 18.04為作業系統,請先參考[[Python]]安裝Python本身需要的套件。再安裝Sentry所需要用 的套件
  然後裝 <code>service-sentry</code>下


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
sudo apt install -y gcc libffi-dev libgeoip-dev libjpeg-dev libpq-dev libxml2-dev libxslt1-dev libxslt-dev libyaml-dev nodejs python-dev python-setuptools
sudo su - service-sentry -c "git clone https://github.com/getsentry/self-hosted.git; cd self-hosted; git checkout 23.7.2; ./install.sh; docker compose up -d"
</syntaxhighlight>
</syntaxhighlight>


  另外 需要 安裝[[Redis]]與[[PostgreSQL]] 量大 可以考慮裝在不同台機器上,或 使用雲端服務
== 升級 ==
 
請務必先參考[https://develop.sentry.dev/self-hosted/releases/ Self-Hosted Releases & Upgrading]文件上的說明,有些版本是 需要 先升級到某個中間版本才能往後繼續升級 像是目前看到的說明:
 
<pre>
<your.sentry.version> -> 9.1.2 -> 21.5.0 -> 21.6.3 -> 23.6.2 -> latest
</pre>
 
升級 方式 切到<code>self-hosted</code>目錄下跑<code>./install.sh</code>


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
sudo apt install -y postgresql-all redis-server
cd self-hosted; docker compose down; git pull; git checkout 23.7.2; ./install.sh; docker compose up -d
</syntaxhighlight>
</syntaxhighlight>


  接下來安裝Sentry本體
== 設定 ==
 
=== Google OAuth ===
 
參考[https://develop.sentry.dev/self-hosted/sso/ Self-Hosted Single Sign-On (SSO)]這邊的設定:
 
* 需要先到Google端建立應用程式。
** 其中文章裡沒有提到的是Google端的<code>redirect_uri</code>設定需要設為<code>https://sentry.example.com/auth/sso/</code>。
* 再把應用程式對應的client id與client secret填到<code>sentry/config.yml</code>內,再重啟Sentry。
 
=== Slack ===
 
參考[https://develop.sentry.dev/integrations/slack/ Slack Integration]這邊的設定。
 
== 除錯 ==
 
可以先用<code>docker-compose</code>的<code>logs -f</code>看錯誤訊息


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
pip install sentry
docker-compose logs -f
</syntaxhighlight>
</syntaxhighlight>


行 40: 行 73:


* {{Official|https://sentry.io/}} {{en}}
* {{Official|https://sentry.io/}} {{en}}
* [https://github.com/getsentry/self-hosted Sentry On-Premise setup] {{en}}
* [https://docs.sentry.io/server/ Docs - Sentry Server] {{en}}
* [https://docs.sentry.io/server/ Docs - Sentry Server] {{en}}


[[Category:軟體]]
[[Category:軟體]]

於 2023年10月15日 (日) 20:39 的最新修訂

Sentry是一套蒐集錯誤訊息的軟體,或是對應的雲端服務。

硬體

官方推估每天處理四百萬的事件,資料保留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 23.7.2; ./install.sh; docker compose up -d"

升級

請務必先參考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 23.7.2; ./install.sh; docker compose up -d

設定

Google OAuth

參考Self-Hosted Single Sign-On (SSO)這邊的設定:

  • 需要先到Google端建立應用程式。
  • 再把應用程式對應的client id與client secret填到sentry/config.yml內,再重啟Sentry。

Slack

參考Slack Integration這邊的設定。

除錯

可以先用docker-composelogs -f看錯誤訊息:

docker-compose logs -f

參考文獻

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

外部連結