精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何使用 Sentry 捕獲前端異常

開發 前端
如果我們想要擁有一套完整的前端異常監控系統,首先,需要關心的問題就是,如何及時捕捉異常,如何準確定位異常和錯誤的位置,采集到異常后如何及時通知相關人員。

工作多年,發現大家總是會遇到這種特殊的場景:用戶反映某個功能異常。為了找出問題所在,我們嘗試在本地重現異常,但結果是什么都沒有。另一方面,前端代碼的運行環境,如PC瀏覽器、手機瀏覽器等,復雜且不可控。這意味著代碼中可能會出現各種不可預知的錯誤。

在這種情況下,如果我們想要擁有一套完整的前端異常監控系統,首先,需要關心的問題就是,如何及時捕捉異常,如何準確定位異常和錯誤的位置,采集到異常后如何及時通知相關人員?

選擇解決方案

我們先來看看常見的前端監控方案。

方案一:自我研究。

具體工作主要是:自己重寫Window對象中的onerror和onunhandledrejection方法,收集錯誤信息,通過服務端接口上傳,編寫服務端文件,使用Sourcemap文件恢復源碼排查問題。

此外,還可以搭建一個查看異常信息的平臺。因此,自研方法存在明顯的缺陷,需要大量的精力。當然,自研也有易于擴展的優勢,比如在前端監控中加入性能監控功能,方便后續頁面的性能優化。

方案二:借助成熟的第三方工具,例如 Sentry。

這種方法不需要大量的開發,只要訪問配置足夠。

對于這兩種解決方案,如果自己沒有那么多精力去研究,可以選擇使用第三方工具。

在成熟的第三方工具中,我推薦你使用 Sentry。因為 Sentry 是一個開源的 bug 跟蹤工具,可以幫助我們實時監控和修復系統 bug。

此外,Sentry 支持通過 Sourcemap 文件恢復 JS 錯誤調用堆棧,也可以在收集到異常后通過 Telegram 或郵件實時通知。

另一個重要的點是,Sentry 允許我們在自己的服務器上構建私有服務,這意味著我們可以免費使用 Sentry 的強大功能,避免源代碼泄露的風險。

下面這張圖可以直觀地展示哨兵采集異常信息的效果。

如何及時捕獲異常?

部署哨兵

第一步,無疑是部署 Sentry。 由于官方推薦使用 Docker 進行部署,且操作相對簡單,所以我將以 Docker 為例,向大家展示如何從零開始搭建 Sentry 服務。

首先,我們安裝 Docker 和 Docker-Compose。 安裝完成后,啟動Docker,拉取sentry-onpremise倉庫代碼,這是Sentry官方提供的安裝程序,然后啟動里面的安裝腳本。  

在此期間,它將指導您創建管理會員帳戶并最終啟動哨兵服務。 相關命令可以參考這段代碼:

git clone https://github.com/getsentry/onpremise
cd onpremise
./install.sh
$ docker-compose up -d

如果啟動過程沒問題,在瀏覽器中輸入http://ip:9000進入Sentry登錄頁面,然后使用剛剛創建的管理員用戶名和密碼登錄系統。

前端項目訪問

經過剛才的一些操作,我們的Sentry服務器就完成了,接下來,我們可以在應用中集成Sentry客戶端SDK,在前端代碼中實時報錯。

Sentry 非常強大,支持各種前端框架,如 Vue、Angular、React 等。我們都知道 Vue 是一個流行的前端輕量級框架,具有輕量級、高性能和組件化的優勢。那么我將以Vue項目為例進行詳細介紹。

創建項目

首先,我們點擊Sentry頁面左側導航欄中的第一項Projects,然后,點擊頁面右上角的Create Project按鈕。

然后,在Browser下選擇Vue,再次點擊CreateProject就可以創建項目了。

接下來,您將看到 Sentry 給出的 Vue 項目的配置指南,它將逐步指導您完成項目配置。

然后,我們繼續指南。

首先,通過npm在項目中安裝Sentry依賴的兩個npm包,分別是@sentry/browser和@sentry/integrations,然后,在main.js中導入。

然后,使用Sentry.init初始化和配置Sentry。配置的時候,教程里已經提供了初始化代碼,我們直接復制粘貼到main.js中即可。

最后,我們點擊指南底部的確認按鈕,然后,自動跳轉到本項目的Issue錯誤頁面。

這里需要特別注意的是DSN地址與項目一一對應,不能隨意更改。

import * as Sentry from '@sentry/browser'
import { Vue as VueIntegration } from '@sentry/integrations'
Sentry.init({
dsn: 'https://xxxxxxxxxxxxxxxxx@sentry.in.cn/2',
integrations: [new VueIntegration({
Vue,
attachProps: true
})]
})

核實

現在,在Issue錯誤頁面上,我們看到,只有一個空白表單,并且沒有任務異常信息。 讓我們創建一個 JS 錯誤報告,看看 Sentry 的效果。

首先,我們在App.vue的created方法中添加一行代碼:this.test(),調用當前組件中不存在的方法,強行產生JS錯誤。 通過 Chrome DevTools 中的 Network 可以看到,每次頁面刷新時,都會發送一個 Sentry 相關的 Post 請求,也就是 Sentry 收集異常信息。 這時候進入Issue報錯頁面,我們發現Sentry已經顯示了捕獲到的異常:

我們知道,Sentry 將每個異常報告都視為一個 Event,每個 Event 都有一個 Fingerprint。 指紋默認由 Sentry 的分組算法生成。 相同指紋的事件將自動合并為一個問題。 具體生成邏輯可以查看官方文檔:https://docs.sentry.io/product/data-management-settings/event-grouping/

通過問題列表,我們可以獲得以下信息:異常類型、異常名稱、觸發位置、最近觸發時間、首次觸發時間等。

點擊進入問題詳情頁面,在頁面中間區域可以看到最新Event的具體信息,如用戶IP地址、瀏覽器信息、系統信息、異常調用棧信息等。

如何準確定位異常報錯的位置?

現在,我們看到 Sentry 已經捕獲了異常調用堆棧信息。但是,因為網上的代碼都是經過壓縮和混淆的,要知道是哪一行代碼報錯,只能全局搜索關鍵字,然后根據壓縮代碼的上下文定位。

那么如何查明錯誤消息呢?

首先,我們在Sentry后臺配置AuthToken,這是配置上傳Sourcemap的必要參數。

那么如何創建這個Token呢?

我們點擊頁面左上角的用戶名,在下拉菜單中找到User Settings,點擊進入用戶設置界面,然后,點擊Auth Tokens菜單選項新建一個Token。

接下來,我們在構建編譯代碼的時候開啟Sourcemap配置,然后,在根目錄下新建一個.sentryclirc文件。

最后,在項目中下載安裝Webpack插件@sentry/webpack-plugin,在打包配置文件中添加上傳Sourcemap到Sentry的配置。

具體配置請參考這段代碼:

[auth]
token=exxxxxxxxxxxx
[defaults]
project=xiaoan-web
org=sentry
url=https://sentry.xxxxx.com/
view raw

這里的 Release 屬性對應的是代碼版本。 Sentry在采集異常信息時,會同步采集用戶的代碼版本信息。 通過這些信息,我們可以知道是哪個版本引起了新的問題。

需要注意的是,UrlPrefix 屬性值并不是固定的,而是與項目靜態資源訪問路徑有關。

const SentryWebpackPlugin = require('@sentry/webpack-plugin')
const commitHash = require('child_process').execSync('git rev-parse HEAD').toString();
new SentryWebpackPlugin({
include: path.resolve(__dirname, '../dist/static/js/'),
ignoreFile: '.sentrycliignore',
ignore: ['node_modules', 'webpack.config.js'],
release: commitHash,
urlPrefix: '~/static/js' // https://ip.com/static/js/app.js
})

配置完成后,Sentry可以根據上傳的Sourcemap恢復代碼位置:

異常采集后如何及時通知相關人員?

當 Sentry 捕捉到異常時,我們希望它能實時通知開發者,針對這種情況,Sentry 提供了郵件通知功能,只需在 Sentry 的配置文件中添加相關配置即可。  

由于檢查郵件可能不夠及時,如果你的團隊使用 Telegram 進行協同工作,你可以嘗試使用第三方 Telegram 插件,你可以在網上搜索一下如何使用。

結論

以上就是今天的全部內容,希望你會喜歡,如果你覺得有用的話,請記得點贊我,關注我,并將它分享給你的朋友,也許能夠幫助到他。

最后,感謝您的閱讀,祝編程愉快!

責任編輯:龐桂玉 來源: web前端開發
相關推薦

2022-11-28 07:35:52

前端錯誤

2022-11-16 09:03:35

Sentry前端監控

2017-03-21 16:34:38

iOS捕獲異常

2017-05-04 21:30:32

前端異常監控捕獲方案

2013-05-14 11:13:40

動態捕獲PythonPython異常

2024-11-11 11:21:30

虛擬機Python跳轉表

2021-03-13 17:38:51

Python警告開發

2021-09-26 09:40:25

React代碼前端

2022-03-15 21:38:29

sentry微服務監控

2019-07-15 07:58:10

前端開發技術

2015-02-03 14:45:55

android全局異常

2023-08-10 13:46:48

前端資源優化

2022-06-10 14:09:18

前端監控異常數據

2021-12-15 20:06:48

ReactJSSentry開發者

2020-10-15 12:00:01

Python 開發編程語言

2020-11-10 09:19:23

Spring BootJava開發

2022-07-20 09:07:03

Linuxtcpdump網絡工具

2020-12-11 09:06:50

異常監控云服務

2019-03-14 15:59:44

前端開發編程

2022-08-11 08:27:24

Sentry日志監控系統
點贊
收藏

51CTO技術棧公眾號

4444欧美成人kkkk| 亚洲国产精品久久一线不卡| 国产区精品视频| 欧美精品99久久久| 欧美人体视频| 欧美日韩大陆一区二区| 久久久久99精品成人片| 麻豆导航在线观看| 国产主播一区二区三区| 久久久久久18| 亚洲精品午夜视频| 超碰97久久国产精品牛牛| 色激情天天射综合网| 中文字幕の友人北条麻妃| 视频福利在线| 国产精品一品视频| 国产精品国语对白| 久久精品久久精品久久| 日韩精品午夜| 精品视频久久久久久| 欧美大片久久久| 久久野战av| 亚洲一区在线观看免费观看电影高清| 日韩免费三级| 天堂在线观看av| 国产在线播放一区| 国产成人+综合亚洲+天堂| 青青国产在线| 国产剧情在线观看一区二区| 国产精品88a∨| 日韩男人的天堂| 91成人国产| 中文字幕久热精品视频在线| 800av在线播放| 秋霞影院一区| 欧美精品1区2区3区| 九九热免费精品视频| 国产污视频在线播放| 一区二区三区高清在线| 亚洲综合视频一区| 成年午夜在线| 欧美国产日本视频| 日本在线观看一区| 免费在线一级视频| 久久一区二区三区四区| 精品一区二区三区自拍图片区 | 欧美日韩一区久久| 国产xxxxx在线观看| 免费成人在线电影| 精品久久久一区| 大肉大捧一进一出好爽视频| 男人av在线播放| 欧美日韩视频在线| 逼特逼视频在线| 在线观看特色大片免费视频| 黑人精品xxx一区| 中文字幕日本最新乱码视频| 无遮挡爽大片在线观看视频| 欧美午夜精品在线| 丰满少妇被猛烈进入高清播放| av中文在线资源库| 欧美视频中文在线看| 男人日女人bb视频| 吞精囗交69激情欧美| 欧美亚洲综合色| 天天干天天玩天天操| 午夜精品久久久久久毛片| 在线播放视频一区| 免费在线观看日韩av| av自拍一区| 日韩电影中文字幕一区| 亚洲色成人网站www永久四虎| 国语产色综合| 日韩在线播放一区| 久久黄色免费网站| 中文在线不卡| 国产精品午夜视频| 国产视频在线观看免费| 成人美女视频在线看| 免费成人av网站| av在线天堂播放| 夜夜爽夜夜爽精品视频| 18禁免费无码无遮挡不卡网站| 先锋欧美三级| 精品蜜桃在线看| 91视频在线网站| 91精品婷婷色在线观看| 97色在线视频观看| 亚洲天堂网在线观看视频| 国产麻豆精品视频| 欧美福利精品| 91精选在线| 在线免费不卡视频| 九九九久久久久久久| 亚洲精品播放| 欧美成年人视频网站| 欧美日韩一二三四区| 久久成人18免费观看| 高清日韩一区| 成年人视频网站在线| 亚洲成人综合视频| 亚洲欧美自偷自拍另类| 精品国产乱子伦一区二区| 在线观看免费高清视频97| 中文字幕第28页| 日韩电影网1区2区| 久草一区二区| 日韩电影免费观看| 欧美日韩一区二区在线视频| 国产伦精品一区三区精东| 色爱综合网欧美| 欧美影院在线播放| 欧美在线 | 亚洲| 中文字幕在线不卡| 黄色三级视频片| 欧美调教视频| 欧美国产在线电影| 一本色道久久综合熟妇| 久久久99久久| 91丨porny丨探花| 蜜桃在线一区| 久久精品国产亚洲7777| 无码人妻丰满熟妇区五十路 | 另类av一区二区| 成人3d动漫一区二区三区91| 天堂中文а√在线| 欧美中文字幕一区| 国产吞精囗交久久久| 亚洲国产精品一区制服丝袜| 5566av亚洲| 麻豆传媒视频在线观看| 欧美综合一区二区| xxx在线播放| 国产日韩视频| 国产一区二区久久久| free性欧美16hd| 日韩精品一区二区三区视频在线观看 | 国产精品一区二区三区www| 国产亚洲精品综合一区91| 国产精品第9页| 不卡高清视频专区| 老太脱裤让老头玩ⅹxxxx| 亚洲精品一二三**| 久久九九全国免费精品观看| 国产精品系列视频| 亚洲欧美怡红院| 国产精品自在自线| 小处雏高清一区二区三区| 国产一区视频在线播放| 日韩免费网站| 欧美色综合网站| 亚洲 欧美 国产 另类| 麻豆精品国产91久久久久久| 最新欧美日韩亚洲| 国产一区二区视频在线看| 久久久精品国产亚洲| 午夜精品小视频| 亚洲一二三区不卡| 久久人妻一区二区| 欧美专区18| 色狠狠久久av五月综合| 精品久久毛片| 精品视频9999| 视频二区在线| 欧美日韩一区二区三区在线| 中文字幕av播放| 丰满少妇久久久久久久| 欧美成人高潮一二区在线看| 天堂日韩电影| 国产精品久久久久久网站| 麻豆网站在线免费观看| 日韩欧美国产成人一区二区| 国产成人无码一区二区三区在线| 久久亚洲春色中文字幕久久久| 日韩一级理论片| 久久久久久久久久久久久久久久久久| 99久热re在线精品视频| 成人美女大片| 久久视频免费在线播放| 无码国产精品96久久久久| 色婷婷综合中文久久一本| 国精产品一区一区| 成人激情午夜影院| 亚洲欧美激情网| 一区视频在线| 亚洲一区二区三区精品动漫| 综合欧美亚洲| 国产精品r级在线| 亚洲精品白浆| 亚洲天堂av高清| 国产99对白在线播放| 欧美性20hd另类| 国产午夜精品理论片| 99国产精品久久久| 污网站在线免费| 国产精品视频久久一区| 亚洲在线播放电影| 欧美久久精品| 成人免费午夜电影| 亚洲妇女成熟| 在线观看免费小视频| 久久99久久精品欧美| 国内少妇毛片视频| 成人区精品一区二区婷婷| 国产精品成人观看视频免费| 成人免费视频观看| 午夜精品在线视频| 国产精品一卡二卡三卡| 亚洲欧洲在线看| 亚洲欧美另类综合| 在线观看视频91| 亚洲精品www久久久久久| 亚洲人123区| 女人十八毛片嫩草av| 成人av在线看| 无码人妻一区二区三区在线视频| 日韩和欧美的一区| 霍思燕三级露全乳照| 久久久久午夜电影| 午夜精品亚洲一区二区三区嫩草 | 日韩中文在线播放| 98精品在线视频| 日本性爱视频在线观看| 久久精品国产免费观看| 在线观看的av| 亚洲天堂2020| 男生女生差差差的视频在线观看| 亚洲成人黄色在线观看| 亚洲av无码片一区二区三区| 777精品伊人久久久久大香线蕉| 欧美男人亚洲天堂| 精品福利免费观看| 日韩精品视频免费看| 尤物在线观看一区| 欧美 日韩 国产 一区二区三区| 久久免费电影网| 一区二区成人国产精品| 色综合www| 国产一区二区三区无遮挡| 日本少妇精品亚洲第一区| 91亚洲精品久久久蜜桃| 中文字幕在线观看91| 国产中文一区二区三区| 日韩va在线观看| 精品一区二区三区久久| 五月天av在线播放| 亚洲天堂av女优| 妺妺窝人体色www聚色窝仙踪| 国产精品久线在线观看| 国产三级黄色片| 国产精品蜜臀在线观看| 国产一二三av| √…a在线天堂一区| 国产精品嫩草影院俄罗斯| 综合av第一页| 日本黄色小说视频| 亚洲最新视频在线播放| 91精品国产综合久久久久久久久| 日韩黄色碟片| 91成人在线看| 久久99国产精品久久99大师| 免费久久一级欧美特大黄| 精品不卡一区| 婷婷视频在线播放| 国产一区欧美| 91黄色小网站| 久久激五月天综合精品| 久久久精品视频国产| 成人美女在线视频| 一本色道久久综合亚洲精品图片| 国产日韩欧美激情| 欧美手机在线观看| 亚洲不卡在线观看| 无码人妻丰满熟妇精品| 91精品在线免费| 欧美 日韩 人妻 高清 中文| 亚洲欧洲黄色网| 国产精品剧情| 97精品国产97久久久久久| 波多野结衣亚洲| 91久久在线播放| 欧美日韩大片免费观看| 亚洲综合视频一区| 亚洲日本视频| 国产喷水theporn| 国产99一区视频免费| 在线观看福利片| 亚洲乱码日产精品bd| 天天操天天操天天操天天| 欧美午夜一区二区三区| 亚洲精品一区二区三区不卡| 亚洲欧美国产日韩天堂区| 国产网友自拍视频导航网站在线观看| 78m国产成人精品视频| 四虎国产精品成人免费影视| 精品1区2区| 五月天久久网站| 黄色国产精品视频| 高清国产午夜精品久久久久久| 亚洲黄色小说视频| 亚洲国产精品久久不卡毛片 | 极品校花啪啪激情久久| 久久亚洲国产| 黄色一级一级片| 成人高清免费观看| 国产又粗又硬又长又爽| 色88888久久久久久影院野外| www.色婷婷.com| 最近2019年好看中文字幕视频| 国产直播在线| 99影视tv| 欧美一区综合| 国产探花在线看| 久久久亚洲精品石原莉奈| 妺妺窝人体色www在线下载| 欧美日韩国产免费一区二区| 日本啊v在线| 午夜精品在线观看| 91国内精品| 日本a级片在线观看| 六月丁香综合在线视频| 久久丫精品忘忧草西安产品| 精品国产户外野外| 天天操天天爱天天干| 久久中文字幕一区| 性欧美video另类hd尤物| 日韩美女一区| 日韩精品国产欧美| 亚洲码无人客一区二区三区| 偷拍一区二区三区| 欧美熟妇交换久久久久久分类| 国产成人精品毛片| 国产一区二区动漫| 在线高清av| 久久精品一区二区三区不卡免费视频 | 青青草91视频| 黄色片网站免费| 91传媒视频在线播放| 国产最新视频在线| 国产www精品| 视频精品在线观看| 国产综合免费视频| 久久久777精品电影网影网 | 日韩vs国产vs欧美| 受虐m奴xxx在线观看| 色婷婷激情综合| 成人免费在线电影| 国产精品一区久久久| 欧美国产小视频| 久久精品无码一区二区三区毛片| 亚洲欧美经典视频| 精品国产九九九| 欧美精品18videosex性欧美| 欧美五码在线| 北条麻妃在线视频| 中文字幕中文在线不卡住| 国产精品美女一区| 欧美激情视频网址| 日本中文字幕在线一区| 日韩av在线综合| 国产精品国产三级国产三级人妇| 国产精品毛片一区二区在线看舒淇| 九九热这里只有精品免费看| 成人动漫视频| 亚洲精品乱码久久久久久自慰| 欧美激情在线看| a级片免费观看| 91国产高清在线| 欧洲激情综合| 丰满人妻一区二区三区53视频| 亚洲mv大片欧洲mv大片精品| 久久视频www| 成人在线视频福利| 亚洲黄色av| 中文字幕黄色网址| 日韩三级免费观看| 台湾佬中文娱乐久久久| 国产又粗又大又爽的视频| av成人老司机| 亚洲图片中文字幕| 高清亚洲成在人网站天堂| 色综合综合色| 国产精品熟女一区二区不卡| 色婷婷精品久久二区二区蜜臂av | 无码精品黑人一区二区三区 | 国产精品久久久久国产精品日日| 国产极品久久久| 国产成人精品免费视频| 欧美三区美女| 日本爱爱爱视频| 精品国产sm最大网站免费看| 国产伊人久久| 人妻少妇精品无码专区二区| 中文字幕日韩精品一区| 视频一区二区三区在线看免费看| 成人精品一区二区三区电影免费| 日韩视频久久| 欧美人禽zoz0强交| 国产午夜精品全部视频播放| 国产精品45p|