Commit 414db82121aaf75e2e3c542736cfe6225c4e777a

Authored by Adhidarma Hadiwinoto
1 parent c81d40ac11
Exists in master

Add xid and request logger on apiserver

Showing 2 changed files with 29 additions and 2 deletions Side-by-side Diff

1   -"use strict";
2   -
3 1 /**
4 2 * API Server
5 3 *
... ... @@ -7,10 +5,13 @@
7 5 */
8 6  
9 7 const express = require('express');
  8 +const uniqid = require('uniqid');
10 9  
11 10 const config = require('../config');
12 11 const logger = require('../logger');
13 12  
  13 +const requestLogger = require('./middlewares/request-logger');
  14 +
14 15 const routerConfig = require('./router-config');
15 16 const routerMatrix = require('./router-matrix');
16 17 const routerServices = require('./router-services');
... ... @@ -41,6 +42,13 @@ isConfigured() && app.listen(config.apiserver.port, function () {
41 42 logger.info('API-SERVER listening', {port: config.apiserver.port});
42 43 });
43 44  
  45 +// initialize xid
  46 +app.use((req, res, next) => {
  47 + res.locals.xid = uniqid();
  48 + next();
  49 +});
  50 +
  51 +app.use(requestLogger);
44 52  
45 53 app.use('/apikey/:apikey', needValidApikey);
46 54 app.use('/apikey/:apikey/config', routerConfig);
api-server/middlewares/request-logger.js
... ... @@ -0,0 +1,19 @@
  1 +const MODULE_NAME = 'KOMODO-SDK.API-SERVER.REQUEST-LOGGER';
  2 +
  3 +const logger = require('logger');
  4 +
  5 +module.exports = (req, res, next) => {
  6 + const { xid } = res.locals;
  7 +
  8 + logger.verbose(`${MODULE_NAME} 06A6440A: Got a request`, {
  9 + xid,
  10 + reqIp: req.ip,
  11 + method: req.method,
  12 + url: req.url,
  13 + path: req.path,
  14 + qs: req.query,
  15 + body: req.body,
  16 + });
  17 +
  18 + next();
  19 +};