diff --git a/packages/common/src/mvc/models/RequestContext.ts b/packages/common/src/mvc/models/RequestContext.ts index bae351df98e..b2e0fc19553 100644 --- a/packages/common/src/mvc/models/RequestContext.ts +++ b/packages/common/src/mvc/models/RequestContext.ts @@ -83,6 +83,6 @@ export class RequestContext extends Map { } async emit(eventName: string, ...args: any[]) { - return this.injector && this.injector.emit(eventName, args); + return this.injector && this.injector.emit(eventName, ...args); } } diff --git a/packages/common/src/server/components/LogIncomingRequestMiddleware.ts b/packages/common/src/server/components/LogIncomingRequestMiddleware.ts index d0976aa99da..e0edca84eb6 100644 --- a/packages/common/src/server/components/LogIncomingRequestMiddleware.ts +++ b/packages/common/src/server/components/LogIncomingRequestMiddleware.ts @@ -72,6 +72,7 @@ export class LogIncomingRequestMiddleware implements IMiddleware { }); } } + request.ctx.logger.flush(); } diff --git a/packages/common/src/server/utils/contextMiddleware.ts b/packages/common/src/server/utils/contextMiddleware.ts index 29f7c93fb41..29677ee4ba8 100644 --- a/packages/common/src/server/utils/contextMiddleware.ts +++ b/packages/common/src/server/utils/contextMiddleware.ts @@ -21,6 +21,16 @@ export class ContextMiddleware { this.reqIdBuilder = reqIdBuilder; } + static async onClose(err: any, response: any) { + const {req: request} = response; + + await request.ctx.emit("$onResponse", request, response); + await request.ctx.destroy(); + + delete request.ctx; + delete request.log; + } + async use(request: any, response: any, next: any) { const {level, ignoreUrlPatterns, maxStackSize} = this; @@ -45,17 +55,6 @@ export class ContextMiddleware { next(); } - - static async onClose(err: any, response: any) { - const {req: request} = response; - try { - await request.ctx.emit("$onResponse", request, response); - await request.ctx.destroy(); - } catch (er) {} - - delete request.ctx; - delete request.log; - } } /** diff --git a/tasks/gulp/clean.js b/tasks/gulp/clean.js index 50948b9091e..75bdb08e272 100644 --- a/tasks/gulp/clean.js +++ b/tasks/gulp/clean.js @@ -19,7 +19,7 @@ module.exports = { .src([ "test/**/*.{js,js.map,d.ts}", "test/**/*.{js,js.map,d.ts}", - "packages/**/*.{js,js.map,d.ts,d.ts.map}", + "packages/**/src/**/*.{js,js.map,d.ts,d.ts.map}", "packages/**/node_modules" ], {read: false}) .pipe(clean());