Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ghost-ignition

Package Overview
Dependencies
Maintainers
12
Versions
71
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ghost-ignition

Basic configuration and tooling shared across applications

  • 2.9.6
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
1.9K
decreased by-16.54%
Maintainers
12
Weekly downloads
 
Created
Source

Ignition

Build Status

Basic configuration and tooling shared across applications

Logging

var logging = require('ghost-ignition').logging({
    domain: 'example.com,
    env: 'production',
    mode: 'long',
    level: 'info',
    transports: ['file'],
    rotation: {enabled: true, period: '1d', count: 10},
    path: '/var/log'
});

mode         : long|short (default is `short`) - defines the output volume (helpful when logging requests)
level        : info|error|debug (default is `info`)
transports   : stdout|file|stderr (default is `['stdout']`)
path         : is used when file transport is enabled (default is `process.cwd()`)

logging.info({req: req, res: res});
logging.info('Info');
logging.error(new Error());
logging.warn('this', 'is', 'a', 'warning');
logging.debug('this is a debug mode');

env parameter

Each config option, can be passed as an environment variable: E.g. LEVEL=error or MODE=long.

There is also a special env var

LOIN=true

Which sets the LEVEL to info and the MODE to long, for maximum output.

Logging into file

We log JSON format into file. This is very easy to forward and easy to interprete. By default we create two log files:

  • errors log entries: contains only errors
  • all log entries: contains everything

You can easily make the log files readable by calling: cat your.log | bunyan

Loggly Stream

You can send your logs to loggly by configuring the logger like this:

var logging = require('ghost-ignition').logging({
    domain: 'example.com,
    env: 'production',
    mode: 'long',
    level: 'info',
    transports: ['file', 'loggly'],
    rotation: {enabled: true, period: '1d', count: 10},
    path: '/var/log',
    loggly: {
      token: 'your-token',
      subdomain: 'your-subdomain',
      match: 'regex as string to match specific properties only certain log entries'
    }
});

Example for match:
match: 'level:critical'
match: 'statusCode:500|statusCode:403'

NOTE: The loggly stream will only send error logs. Furthermore, you can only match a string in the error object.

Utils

var errors = require('ghost-ignition');

// you can pass any error and ignition will tell you if this is a custom ignition error
errors.utils.isIgnitionError(err);

// serialize an error to a specific format
errors.utils.serialize(err, {format: 'jsonapi|oauth'});

// deserialize specific format to error instance
errors.utils.deserialize(err);

Development

Publish

  • yarn ship

Copyright (c) 2016-2018 Ghost Foundation - Released under the MIT license.

Keywords

FAQs

Package last updated on 25 Sep 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc