Hapiness module for logging


stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
00Nov 20, 2017May 24, 2017Minified + gzip package size for @hapiness/logger in KB



Logger Module

Logger module for the Hapiness framework.

Table of contents

Using your module inside Hapiness application

yarn or npm it in your package.json

$ npm install --save @hapiness/core @hapiness/logger rxjs


$ yarn add @hapiness/core @hapiness/logger rxjs
"dependencies": {
    "@hapiness/core": "^1.2.2",
    "@hapiness/logger": "^1.1.0",
    "rxjs": "^5.5.2",

import LoggerModule from the library

import { Hapiness, HapinessModule, HttpServer, OnGet } from '@hapiness/core';
import { LoggerModule, LoggerService } from '@hapiness/logger';

    version: '1.0.0',
    imports: [
class HapinessModuleApp {
    constructor(private _logger: LoggerService) {
        this._logger.info('my data log');

    method: 'get',
    path: '/test'
class MyRoute implements OnGet {
    constructor(private _logger: LoggerService) {}
    onGet(request, reply) {
        this._logger.warn('my data log');

// Define your logger

Hapiness.bootstrap(HapinessModuleApp, [ LoggerExt.setConfig({ logger: myLogger }) ]);

Access logs

If HttpServerExt is loaded, the LoggerModule will inject an AccessLogs component. To desactivate the access logs, provide a module's config:

    version: '1.0.0',
    imports: [
        LoggerModule.setConfig({ accessLogs: false })
class HapinessModuleApp {

Back to top


To set up your development environment:

  1. clone the repo to your workspace,
  2. in the shell cd to the main folder,
  3. hit npm or yarn install,
  4. run npm or yarn run test.
    • It will lint the code and execute all tests.
    • The test coverage report can be viewed from ./coverage/lcov-report/index.html.

Back to top

Change History

  • v1.1.0 (2017-11-20)
    • Latest packages' versions.
    • Documentation.
    • Change packaging process.
  • v1.0.0 (2017-10-26)
    • Create LoggerModule
    • Logger extension
    • Logger provider
    • Access logs
    • Documentation

Back to top


Julien Fauville Antoine Gomez Sébastien Ritz Nicolas Jessel

Back to top


Copyright (c) 2017 Hapiness Licensed under the MIT license.

Back to top

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.