我正在尝试将我的bandi应用程序与哨兵集成在一起,为此我需要编写一个中间件。使用以下文档:https://strapi.io/documentation/3.0.0-beta.x/advanced/middlewares.html我可以使用以下内容创建自定义中间件:
module.exports = strapi => {
return {
initialize() {
strapi.app.use(async (ctx, next) => {
try {
await next();
} catch (error) {
Sentry.captureException(error)
}
});
}
};
};
但是,这样做可以防止trapi以常规方式打印出错误以进行控制台处理,但错误是由哨兵应用程序捕获的。
所以,我的问题是:我如何“无缝”捕获错误并将其发送给第三方应用程序,同时又不妨碍Stradi的默认功能和错误记录进行控制台。
任何帮助将不胜感激!
谢谢:)
编辑:我发现,在此文件中指出的所有“错误”错误都可以通过“繁荣”中间件访问:https://github.com/strapi/strapi/blob/6309af25c921640cb76aeeda463e55db1eb53ef1/packages/strapi/lib/middlewares/boom/index.js#L69