安裝
https://docs.sentry.io/platforms/javascript/guides/vue/
基礎配置
https://docs.sentry.io/platforms/javascript/guides/vue/configuration/options/
可以直接傳遞給 init() 的對象
常用選項
dsn
string
收集錯誤的地址,如果沒有設置,則讀取環境變量中 SENTRY_DSN
的值。
debug
boolean
調試模式,默認值爲 false
,打開以後會多出一些信息上傳,例如你可以看到 fullTrace,traceDetails 等信息。
release
string
版本號,默認情況下會自動設置或讀取環境變量中 SENTRY_RELEASE
的值,一般需要搭配其他插件配套使用。
environment
string
設置當前環境,如果沒有設置,則讀取環境變量中 SENTRY_ENVIRONMENT
的值,環境名稱不能包含換行符、空格或正斜槓,不能是字符串“None”,也不能超過 64 個字符。
tunnel
string
當你的 sentry 需要突破廣告攔截器時,可以設置這個選項代替 dsn,詳情。
sampleRate
number
配置錯誤事件的收集率,0.0~1.0
,1.0 代表 100%,如果設置爲 0.1 則隨機發送 10% 的錯誤。
maxBreadcrumbs
number
此變量控制收集錯誤的導航痕跡總量,默認爲 100,一般你的應用也沒這麼多操作記錄,默認就足夠使用了。
attachStacktrace
boolean
默認是關閉的,開啓後可以看到詳細的調用棧信息。
denyUrls
Array<string | RegExp>
使用正則來匹配不發送錯誤的 url 列表。
allowUrls
Array<string | RegExp>
使用正則來匹配發送錯誤的 url 列表。
autoSessionTracking
boolean
啓用會話跟蹤功能的標誌,默認爲 true。
initialScope
ScopeContext | Scope
設置初始數據,對象或者函數
maxValueLength
number
發送數據的單個字段長度,默認爲 250。
normalizeDepth
number
限制數組或對象的深度,默認爲 3,設置 0 爲禁用。
normalizeMaxBreadth
number
限制數組的長度或者對象的屬性。默認爲 1000。
enabled
boolean
是否發送頁面錯誤事件到 sentry,默認爲 true,即使設置爲 false 也不會完全禁止,如果想要去完全禁止,可以有條件的調用 Sentry.init。
sendClientReports
boolean
設置爲 fase 可禁用客戶端報告的發送,客戶端報告目前主要用於爲從未發送的事件發出結果。
集成配置(Integration Configuration)
integrations
https://docs.sentry.io/platforms/javascript/guides/vue/configuration/integrations/
Integration[]
自定義的集成工具配置,或者在配置 tree shaking 的時候會用到。
defaultIntegrations
false | Integration[]
默認集成,設置爲 false 即可禁用默認配置。
鉤子事件(Hooks)
beforeSend
function
在發送錯誤事件之前的操作,例如:忽略、修改、刪除某些錯誤。
beforeBreadcrumb
function
產生導航痕跡事件之前,當函數未返回任何內容時,將刪除痕跡導航。若要傳遞痕跡導航,請返回第一個參數,其中包含痕跡導航對象。回調通常獲取第二個參數(稱爲“hint”),其中包含從中創建痕跡導航的原始對象,以進一步自定義痕跡導航的外觀。
傳輸配置(Transport Options)
transport
function
它採用傳輸選項並返回用於將事件發送到 Sentry 的 Transport 對象。
追蹤選項(Tracing Options)
tracesSampleRate
number
定義 transaction 的發送率
tracesSampler
function
返回值爲 tracesSampleRate,可以決定哪些 transaction 可以發送或動態決定發送率,如果和 tracesSampleRate 一起被定義,則會忽略 tracesSampleRate