sentry 服務的搭建

sentry 服務的搭建

一、環境

在Mac環境下進行的搭建。安裝需要docker的環境,可以點擊下面文本進行下載
docker的下載地址

安裝完畢之後,可以在下面網站中申請一個dockerid
dockerid申請地址
申請的時候需要翻牆,否則點擊“註冊”按鈕都一直是無法點擊的。(

查看版本
$docker --version
Docker version 19.03.4, build 9013bf5
$docker-compose --version
docker-compose version 1.24.1, build 4667896b
$docker-machine --version
docker-machine version 0.16.2, build bd45ab13
到這裏,那就說明docker安裝已經完成了。

一、獲取sentry

1、我們可以通過命令,克隆sentry對應git地址中,進行獲取

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

進入onpremise目錄:

cd onpremise

2、手動創建docker數據卷

docker volume create --name=sentry-data && docker volume create --name=sentry-postgres

3、創建虛擬環境的配置文件

cp -n .env.example .env

4、更新後,構建服務

docker-compose build

5、生成對應的密鑰

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

然後把執行完畢之後,最後生成的密鑰文件粘貼到docker-compose.yml文件中,如下圖所示:
在這裏插入圖片描述
填寫的時間主要格式有空格(注)
6、執行新的改變

docker-compose run --rm web upgrade

7、重新創建服務

docker-compose up -d 

8.查看sentry頁面,輸入localhost:9000,如下圖所示:
在這裏插入圖片描述
9、使用你創建有戶名和密碼進行登錄,調轉到如下頁面:
在這裏插入圖片描述
10、登錄進去可以對組織名進行設置,如下面所示:
在這裏插入圖片描述

二、郵件設置

1、配置文件修改

vi .env

下面配置,以qq郵箱爲例,修改內容如下所示:

# smtp_setting
SENTRY_SERVER_EMAIL=*********@qq.com
SENTRY_EMAIL_HOST=smtp.qq.com
SENTRY_EMAIL_USER=*********@qq.com
SENTRY_EMAIL_PASSWORD=*******
SENTRY_EMAIL_PORT=587
SENTRY_EMAIL_USE_TLS=true

SENTRY_SERVER_EMAIL(自己的郵箱地址)
SENTRY_EMAIL_HOST(qq的SMTP地址)
SENTRY_EMAIL_USER(郵箱用戶名)
SENTRY_EMAIL_PASSWORD(郵箱密碼)
SENTRY_EMAIL_PORT(郵箱端口)
SENTRY_EMAIL_USE_TLS(用戶郵箱是否開啓TSL)

2、修改配置文件docker-compose.yml,
在這裏插入圖片描述
註釋掉當前當前配置,否則當前配置文件內容會覆蓋.env文件的內容。
3、重啓docker

docker-compose build
docker-compose run --rm web upgrade
docker-compose up -d

4、在頁面中,先點擊自己登陸的用戶,然後再點擊“郵件”,然後可以看到此前更改的內容,最後可以在測試設置部分,向自己的郵箱發送一個測試郵件,如下圖所示:
在這裏插入圖片描述
測試結果,如下圖所示:
在這裏插入圖片描述

三、創建項目

1、點擊右上角,創建項目
在這裏插入圖片描述
2、以VUE項目爲例,選擇Vue
在這裏插入圖片描述
創建完畢之後,選擇當前的項目,如下所示:
在這裏插入圖片描述
可以查看對應安裝指引,來進行Vue項目的集成:
在這裏插入圖片描述

三、前端項目的集成

1、通過yarn 進行安裝

yarn add @sentry/browser
yarn add @sentry/integrations

2、在Vue項目中進行集成。

import Vue from 'vue'
import * as Sentry from '@sentry/browser';
import * as Integrations from '@sentry/integrations';

Sentry.init({
  dsn: 'http://d347def73f7e4179a3079b5c21e8686d@localhost:9000/2',
  integrations: [new Integrations.Vue({Vue, attachProps: true})],
});

在設置中找到當前項目對應的dsn,如下圖所示:
在這裏插入圖片描述
3、報錯信息因爲打包之後報的,所以不能精確到具體哪一行報錯,可以通過sentry-webpack-plugin,自動將生成的js map文件上傳到服務器
安裝對應的插件依賴:

npm i @sentry/webpack-plugin -D

在webpack配置文件中,進行如下配置:

const SentryCliPlugin = require('@sentry/webpack-plugin');

const config = {
  plugins: [
    new SentryCliPlugin({
      include: '.',
      ignoreFile: '.sentrycliignore',
      ignore: ['node_modules', 'webpack.config.js'],
      configFile: 'sentry.properties',
    }),
  ],
};

sentry.properties 配置文件可以參考官網一下地址:
sentry.properties 配置文件

四、鏡像加速

1、鑑於國內網絡問題,後續拉取 Docker 鏡像十分緩慢,我們可以需要配置加速器來解決。
在任務欄點擊 Docker for mac 應用圖標 -> Perferences… -> Daemon -> Registry mirrors。在列表中填寫加速器地址即可。可以填寫一下地址(http://141e5461.m.daocloud.io/)修改完成之後,點擊 Apply & Restart 按鈕,Docker 就會重啓並應用配置的鏡像地址了。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章