Skip to content

Commit 515d50f

Browse files
authored
feat: debug middleware enter log on every request (#210)
Usage: ```bash DEBUG=egg-core:middleware egg-bin start ```
1 parent 51e609b commit 515d50f

1 file changed

Lines changed: 13 additions & 0 deletions

File tree

lib/loader/mixin/middleware.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@ module.exports = {
7878
// middlewares support options.enable, options.ignore and options.match
7979
mw = wrapMiddleware(mw, options);
8080
if (mw) {
81+
if (debug.enabled) {
82+
// show mw debug log on every request
83+
mw = debugWrapper(mw);
84+
}
8185
app.use(mw);
8286
debug('Use middleware: %s with options: %j', name, options);
8387
this.options.logger.info('[egg:loader] Use middleware: %s', name);
@@ -110,3 +114,12 @@ function wrapMiddleware(mw, options) {
110114
fn._name = mw._name + 'middlewareWrapper';
111115
return fn;
112116
}
117+
118+
function debugWrapper(mw) {
119+
const fn = (ctx, next) => {
120+
debug('[%s %s] enter middleware: %s', ctx.method, ctx.url, mw._name);
121+
return mw(ctx, next);
122+
};
123+
fn._name = mw._name + 'DebugWrapper';
124+
return fn;
125+
}

0 commit comments

Comments
 (0)