Middleware
Hapi
For Hapi, bind request context in an early extension point and report failures from the request lifecycle rather than from ad hoc plugin code.
server.ext("onRequest", (request, h) => {
errorcore.setRequestContext({
method: request.method.toUpperCase(),
route: request.path,
requestId: request.info.id,
});
return h.continue;
});The main rule is consistency. Use one path for request context and one path for failure reporting so incidents stay uniform across plugins.