diff --git a/packages/server/src/index.js b/packages/server/src/index.js index 302025bc56eabd13b2bb670db798f2968a7ec596..c0e9ca35763a7cba3cb91faf1335ebfc5d1f0a49 100644 --- a/packages/server/src/index.js +++ b/packages/server/src/index.js @@ -28,8 +28,24 @@ const configureApp = app => { app.locals.models = models - app.use(morgan('combined', { stream: logger.stream })) app.use(bodyParser.json({ limit: '50mb' })) + morgan.token('graphql', ({ body }, res, type) => { + if (!body.operationName) return '' + switch (type) { + case 'query': + return body.query.replace(/\s+/g, ' ') + case 'variables': + return JSON.stringify(body.variables) + case 'operation': + default: + return body.operationName + } + }) + app.use( + morgan(config.get('pubsweet-server').morganLogFormat || 'combined', { + stream: logger.stream, + }), + ) app.use(bodyParser.urlencoded({ extended: false })) app.use(cookieParser())