1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- 'use strict'
- module.exports = (isDebug, processName) => {
- let winston = require('winston')
- if (typeof processName === 'undefined') {
- processName = 'SERVER'
- }
- // Console
- let logger = new (winston.Logger)({
- level: (isDebug) ? 'debug' : 'info',
- transports: [
- new (winston.transports.Console)({
- level: (isDebug) ? 'debug' : 'info',
- prettyPrint: true,
- colorize: true,
- silent: false,
- timestamp: true
- })
- ]
- })
- logger.filters.push((level, msg) => {
- return '[' + processName + '] ' + msg
- })
- // External services
- if (appconfig.externalLogging.bugsnag) {
- const bugsnagTransport = require('./winston-transports/bugsnag')
- logger.add(bugsnagTransport, {
- level: 'warn',
- key: appconfig.externalLogging.bugsnag
- })
- }
- if (appconfig.externalLogging.loggly) {
- require('winston-loggly-bulk')
- logger.add(winston.transports.Loggly, {
- token: appconfig.externalLogging.loggly.token,
- subdomain: appconfig.externalLogging.loggly.subdomain,
- tags: ['wiki-js'],
- level: 'warn',
- json: true
- })
- }
- if (appconfig.externalLogging.papertrail) {
- require('winston-papertrail').Papertrail // eslint-disable-line no-unused-expressions
- logger.add(winston.transports.Papertrail, {
- host: appconfig.externalLogging.papertrail.host,
- port: appconfig.externalLogging.papertrail.port,
- level: 'warn',
- program: 'wiki.js'
- })
- }
- if (appconfig.externalLogging.rollbar) {
- const rollbarTransport = require('./winston-transports/rollbar')
- logger.add(rollbarTransport, {
- level: 'warn',
- key: appconfig.externalLogging.rollbar
- })
- }
- if (appconfig.externalLogging.sentry) {
- const sentryTransport = require('./winston-transports/sentry')
- logger.add(sentryTransport, {
- level: 'warn',
- key: appconfig.externalLogging.sentry
- })
- }
- return logger
- }
|