微型前端哨兵



是否有可能在一个页面上初始化Sentry两次?用例将是对作为微格式化插入的应用程序部分进行错误跟踪。

因此,应用程序的这一部分发生的错误应该发送给团队自己的哨兵项目。我还想知道是否有任何方法可以过滤错误,以便只发送与微格式化相关的错误,而过滤掉其他错误。我们可以使用反应错误边界吗?

看起来有一种方法可以用第二个dsn初始化Hub


import {BrowserClient, Hub} from '@sentry/browser';
const client = new BrowserClient({
dsn: 'micorFrontEndSntryInstance'
});
const hub = new Hub(client)

这个集线器可以传递给封装组件的ErrorBoundary。在每个componentDidCatch中,我们可以将错误发送到微前端哨兵:

componentDidCatch(error, errorInfo) {
this.props.hub.run(currentHub => {
currentHub.withScope((scope) => {
scope.setExtras(errorInfo);
currentHub.captureException(error);
});
})
}

所有代码都来自这个示例实现。

最新更新