All files / platform/packages/http-request-logger/providers LoggerProvider.js

62.5% Statements 10/16
75% Branches 3/4
80% Functions 4/5
62.5% Lines 10/16

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49    1x 1x                     1x 1x       1x         1x                     1x       1x       1x       1x  
'use strict';
 
const { ServiceProvider } = require('@adonisjs/fold');
const path = require('path');
 
class LoggerProvider extends ServiceProvider {
  /**
   * Register namespaces to the IoC container
   *
   * @method register
   *
   * @return {void}
   */
  register() {
    this._loadConfig();
    this.app.autoload(path.join(__dirname, '../src'), 'C2C/http-request-logger');
  }
 
  boot() {
    const env = use('Adonis/Src/Config').get('app.http.loggerEnv');
 
    /**
     * Hook only when enabled for current NODE_ENV
     */
    Iif (!Array.isArray(env) || env.indexOf(process.env.NODE_ENV) > -1) {
      const HttpContext = use('Adonis/Src/HttpContext');
      const AdonisLogger = use('Adonis/Src/Logger');
      const Logger = require('../src/Logger');
 
      HttpContext.onReady(function (ctx) {
        const logger = new Logger(ctx, AdonisLogger);
        logger.hook();
      });
    }
 
    this._registerMiddleware();
  }
 
  _loadConfig() {
    this.app.use('Adonis/Src/Config').set('addons.http-request-logger', require('../config'));
  }
 
  _registerMiddleware() {
    require('../start/kernel');
  }
}
 
module.exports = LoggerProvider;