成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Sentry 開發(fā)者貢獻指南 - 什么是 Scope, 什么是 Hub?

開發(fā) 前端
當一個事件被捕獲并發(fā)送到 Sentry 時,SDK 會將該事件數(shù)據(jù)與來自當前 scope 的額外信息合并。

當一個事件被捕獲并發(fā)送到 Sentry 時,SDK 會將該事件數(shù)據(jù)與來自當前 scope 的額外信息合并。SDK 通常會在框架集成中為您自動管理 scope,您無需考慮它們。但是,您應該知道 scope 是什么以及如何利用它來獲取優(yōu)勢。

什么是 Scope, 什么是 Hub?

您可以將 hub 視為我們的 SDK 用于將事件路由到 Sentry 的中心點。當您調用 init() 時,會創(chuàng)建一個 hub,并在其上創(chuàng)建一個 client 和一個空白 scope。然后該 hub 與當前線程相關聯(lián),并將在內部保存 scope 堆棧。

scope 將保存應與事件一起發(fā)送的有用信息。例如context(上下文)或breadcrumbs(面包屑)存儲在 scope 內。當一個 scope 被 push 時,它從父 scope 繼承所有數(shù)據(jù),當它 pop 時,所有修改都被還原。

https://docs.sentry.io/platforms/javascript/enriching-events/context/

https://docs.sentry.io/platforms/javascript/enriching-events/breadcrumbs/

默認的 SDK 集成將智能地 push 和 pop scope。例如,Web 框架集成將圍繞您的路由或控制器創(chuàng)建和銷毀 scope。

Scope 和 Hub 的工作原理

當您開始使用 SDK 時,會自動為您創(chuàng)建一個開箱即用的 scope 和 hub。除非您正在編寫integration(集成)或想要創(chuàng)建或銷毀 scope,否則您不太可能直接與 hub 交互。另一方面,scope 更面向用戶。您可以隨時調用 configure-scope 來修改存儲在 scope 上的數(shù)據(jù)。例如,這用于修改上下文。

https://docs.sentry.io/platforms/javascript/enriching-events/context/

配置 Scope

使用 scope 時最有用的操作是 configure-scope 函數(shù)。它可用于重新配置當前 scope。

您首先需要像往常一樣導入 SDK:

import * as Sentry from "@sentry/browser";

例如,您可以添加自定義 tag 或通知 Sentry 當前已通過身份驗證的用戶。

Sentry.configureScope(function(scope) {
scope.setTag("my-tag", "my value");
scope.setUser({
id: 42,
email: "john.doe@example.com",
});
});

在注銷用戶時取消設置,也可以應用此配置:

Sentry.configureScope(scope => scope.setUser(null));

要了解哪些有用信息可以與 scope 關聯(lián),請參閱上下文文檔。

https://docs.sentry.io/platforms/javascript/enriching-events/context/

局部 Scope

我們還支持一次性推送和配置 scope。這通常稱為 with-scope 或 push-scope,如果您只想發(fā)送具有一個特定事件的數(shù)據(jù),這也非常有用。在以下示例中,我們使用該函數(shù)將 level 和 tag 附加到僅一個特定錯誤:

Sentry.withScope(function(scope) {
scope.setTag("my-tag", "my value");
scope.setLevel("warning");
// will be tagged with my-tag="my value"
Sentry.captureException(new Error("my error"));
});

// will not be tagged with my-tag
Sentry.captureException(new Error("my other error"));

雖然這個例子看起來與 configure-scope 很相似,但它有很大的不同,因為 configure-scope 實際上改變了當前的活動 scope,所有對 configure-scope 的后續(xù)調用都會保留這些變化。

另一方面,使用 with-scope 會創(chuàng)建當前 scope 的克隆,并將保持隔離,直到函數(shù)調用完成。因此,您可以在其中設置您不想在其他地方的上下文信息,或者通過在 scope 上調用 clear 來完全不附加任何上下文信息,而“global(全局)” scope 保持不變。

請記住,with-scope 不會捕獲在其回調函數(shù)中發(fā)生的任何異常,并且在那里發(fā)生的每個錯誤都將被靜默忽略而不報告。

責任編輯:姜華 來源: 黑客下午茶
相關推薦

2022-01-11 20:42:54

開發(fā)Sentry標志

2022-01-17 19:34:43

SentryWeb APISentry API

2022-01-18 23:26:45

開發(fā)

2022-01-15 23:33:47

SentryPyCharm配置

2022-01-02 23:26:08

開發(fā)SDK Sentry

2021-12-15 20:06:48

ReactJSSentry開發(fā)者

2022-01-21 21:33:03

開發(fā)JavaScript應用

2021-12-25 22:31:55

Sentry 監(jiān)控SDK 開發(fā) 性能監(jiān)控

2022-01-16 22:16:59

數(shù)據(jù)庫Sentry開發(fā)者

2022-01-13 20:13:31

元宇宙搜索引擎

2022-01-03 22:59:30

開發(fā)SDK數(shù)據(jù)

2021-12-31 18:35:40

監(jiān)控Sentry開發(fā)

2022-01-02 06:59:43

SentrySDK 開發(fā)客戶端報告

2022-01-19 19:49:53

Sentry瀏覽器SDK

2021-12-16 20:12:37

后端開發(fā)Sentry

2021-12-17 19:15:51

前端蟲洞狀態(tài)

2024-11-25 08:31:50

JVMJava內存管理

2013-08-05 13:26:05

2012-11-16 14:57:25

2018-08-23 09:36:10

軟件開發(fā)編程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: av天天干| 欧美日韩国产在线观看 | 亚洲精品一区在线 | 国产视频久久 | 日本不卡一区二区三区在线观看 | 日韩欧美高清 | 欧美综合一区二区 | 精品亚洲一区二区三区四区五区 | 国产乱码精品一品二品 | 日日摸日日添日日躁av | 国产污视频在线 | 在线免费看毛片 | 欧美在线看片 | 国产精品日韩一区二区 | wwww.xxxx免费 | 久久久久成人精品亚洲国产 | 日韩成人在线播放 | 国产色片在线 | www.天天操| 国产中文视频 | 日韩av一区二区在线观看 | 午夜a v电影 | 韩国毛片视频 | 精品免费国产一区二区三区 | 国产欧美日韩 | 黄色毛片在线观看 | 久久综合av| 亚洲视频www| 草草视频在线观看 | 伊人成人免费视频 | 日本啊v在线 | 成人福利在线视频 | 特级毛片爽www免费版 | 精品国产乱码久久久久久蜜臀 | 欧美精品在线一区二区三区 | 黄色一级特级片 | 亚洲成在线观看 | 国产日韩欧美综合 | 成人免费视屏 | 在线日韩福利 | 中文字幕一区二区三区精彩视频 |