带有register()API的检测文件允许用户利用Next.js服务器生命周期来监控性能、跟踪错误源,并与OpenTelemetry等可观察性库深度集成。
此功能现已稳定,可以删除experimental.instrumentationHook配置选项。
此外,我们还与Sentry合作设计了一个新的onRequestError钩子,可用于:
捕获服务器上抛出的所有错误的重要上下文,包括: 路由器:页面路由器或应用路由器 服务器上下文:服务器组件、服务器操作、路由处理程序或中间件 最喜欢的可观察性提供者报告错误。
export async function onRequestError(err, request, context) {
await fetch('https://...', {
method: 'POST',
body: JSON.stringify({ message: err.message, request, context }),
headers: { 'Content-Type': 'application/json' },
});
}
export async function register() {
// init your favorite observability provider SDK
}