Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,14 @@ on:
branches: [ master ]
pull_request:
branches: [ master ]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [6.x, 8.x, 10.x, 14.x, 16.x]
node-version: [14.x, 16.x, 18.x, 20.x, 22.x, 24.x]
steps:
- uses: actions/checkout@v2
- name: Set up Node.js version ${{ matrix.node-version }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/node-js-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [6.x, 8.x, 10.x, 14.x, 16.x]
node-version: [14.x, 16.x, 18.x, 20.x, 22.x, 24.x]
steps:
- uses: actions/checkout@v2
- name: Set up Node.js version ${{ matrix.node-version }}
Expand All @@ -29,7 +29,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '16.x'
node-version: '22.x'
registry-url: https://registry.npmjs.org/
- run: npm ci
- run: npm publish
Expand Down
23 changes: 11 additions & 12 deletions lib/Logger.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,20 @@ var util = require('util')
var R = require('ramda')
var isString = R.compose(R.equals('String'), R.type)
var isObject = R.compose(R.equals('Object'), R.type)
var isError = util.isError
var merge = require('lodash.merge')
var _ = require('lodash')
var Sequence = require('./handlers/Sequence')

function Logger(_options) {

var levels = ['trace', 'debug', 'info', 'warn', 'error', 'fatal']
var handlers = _options && _options.handlers
var sequence = _options && _options.sequence || new Sequence(handlers)
var options = merge({}, { message: '', level: 'info', maxListeners: 100, sequence: sequence }, _options)
var options = _.merge({}, { message: '', level: 'info', maxListeners: 100, sequence: sequence }, _options)
var self = this

self.child = function(_options) {
var sequence = _options.sequence ? _options.sequence : new Sequence(_options.handlers)
var child = new Logger(merge({}, { sequence: sequence }, _options))
var child = new Logger(_.merge({}, { sequence: sequence }, _options))
child.on('message', self.log)
return child
}
Expand All @@ -36,7 +35,7 @@ function Logger(_options) {

self._logEvent = function(arg1, arg2, arg3, arg4) {
// message, error, context, level
if (arguments.length === 4) return self.emit('internal-message', merge(
if (arguments.length === 4) return self.emit('internal-message', _.merge(
{},
{ message: options.message, level: options.level },
arg3,
Expand All @@ -46,29 +45,29 @@ function Logger(_options) {
))

// message, error, level
if (arguments.length === 3 && isString(arg1) && isError(arg2) && isString(arg3)) return self._logEvent(arg1, arg2, null, arg3)
if (arguments.length === 3 && isString(arg1) && arg2 instanceof Error && isString(arg3)) return self._logEvent(arg1, arg2, null, arg3)
// message, error, context
if (arguments.length === 3 && isString(arg1) && isError(arg2) && isObject(arg3)) return self._logEvent(arg1, arg2, arg3, null)
if (arguments.length === 3 && isString(arg1) && arg2 instanceof Error && isObject(arg3)) return self._logEvent(arg1, arg2, arg3, null)
// message, context, level
if (arguments.length === 3 && isString(arg1) && isObject(arg2) && isString(arg3)) return self._logEvent(arg1, null, arg2, arg3)
// error, context, level
if (arguments.length === 3 && isError(arg1) && isObject(arg2) && isString(arg3)) return self._logEvent(null, arg1, arg2, arg3)
if (arguments.length === 3 && arg1 instanceof Error && isObject(arg2) && isString(arg3)) return self._logEvent(null, arg1, arg2, arg3)
// message, level
if (arguments.length === 2 && isString(arg1) && isString(arg2)) return self._logEvent(arg1, null, null, arg2)
// message, error
if (arguments.length === 2 && isString(arg1) && isError(arg2)) return self._logEvent(arg1, arg2, null, null)
if (arguments.length === 2 && isString(arg1) && arg2 instanceof Error) return self._logEvent(arg1, arg2, null, null)
// message, context
if (arguments.length === 2 && isString(arg1) && isObject(arg2)) return self._logEvent(arg1, null, arg2, null)
// error, level
if (arguments.length === 2 && isError(arg1) && isString(arg2)) return self._logEvent(null, arg1, null, arg2)
if (arguments.length === 2 && arg1 instanceof Error && isString(arg2)) return self._logEvent(null, arg1, null, arg2)
// error, context
if (arguments.length === 2 && isError(arg1) && isObject(arg2)) return self._logEvent(null, arg1, arg2, null)
if (arguments.length === 2 && arg1 instanceof Error && isObject(arg2)) return self._logEvent(null, arg1, arg2, null)
// context, level
if (arguments.length === 2 && isObject(arg1) && isString(arg2)) return self._logEvent(null, null, arg1, arg2)
// message
if (arguments.length === 1 && isString(arg1)) return self._logEvent(arg1, null, null, null)
// error
if (arguments.length === 1 && isError(arg1)) return self._logEvent(null, arg1, null, null)
if (arguments.length === 1 && arg1 instanceof Error) return self._logEvent(null, arg1, null, null)
// context
if (arguments.length === 1 && isObject(arg1)) return self._logEvent(null, null, arg1, null)
// usage error
Expand Down
4 changes: 2 additions & 2 deletions lib/handlers/Env.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
var EventEmitter = require('events').EventEmitter
var util = require('util')
var merge = require('lodash.merge')
var _ = require('lodash')

function Env() {

var self = this

this.handle = function(event) {
self.emit('message', merge({}, { env: process.env }, event))
self.emit('message', _.merge({}, { env: process.env }, event))
}

EventEmitter.call(this);
Expand Down
4 changes: 2 additions & 2 deletions lib/handlers/KeyFilter.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ var util = require('util')
var R = require('ramda')
var isString = R.compose(R.equals('String'), R.type)
var isFunction = R.compose(R.equals('Function'), R.type)
var merge = require('lodash.merge')
var _ = require('lodash')

function KeyFilter(_options) {

var options = merge({}, { exclude: [], include: [] }, _options)
var options = _.merge({}, { exclude: [], include: [] }, _options)
var self = this

this.handle = function(event) {
Expand Down
7 changes: 3 additions & 4 deletions lib/handlers/Merge.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
var EventEmitter = require('events').EventEmitter
var util = require('util')
var merge = require('lodash.merge')
var set = require('lodash.set')
var _ = require('lodash')

function Merge(_other, _options) {

var options = _options || {}
var other = options.key ? set({}, options.key, _other) : _other
var other = options.key ? _.set({}, options.key, _other) : _other
var self = this

this.handle = function(event) {
self.emit('message', options.invert ? merge({}, event, other) : merge({}, other, event))
self.emit('message', options.invert ? _.merge({}, event, other) : _.merge({}, other, event))
}

EventEmitter.call(this);
Expand Down
4 changes: 2 additions & 2 deletions lib/handlers/Oversized.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
var EventEmitter = require('events').EventEmitter
var util = require('util')
var merge = require('lodash.merge')
var _ = require('lodash')
var stringify = require('../utils/stringify');

function Oversized(options) {
Expand All @@ -13,7 +13,7 @@ function Oversized(options) {
var violations = {}
if (result.text.length > options.size) violations.oversized = result.text.length
if (result.circular) violations.circular = true
self.emit('message', merge({}, { prepper: { violations: violations } }, event))
self.emit('message', _.merge({}, { prepper: { violations: violations } }, event))
}

EventEmitter.call(self);
Expand Down
4 changes: 2 additions & 2 deletions lib/handlers/Process.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
var EventEmitter = require('events').EventEmitter
var util = require('util')
var merge = require('lodash.merge')
var _ = require('lodash')

function Process() {

var self = this

this.handle = function(event) {
self.emit('message', merge({}, { process: { title: process.title, version: process.version, pid: process.pid, memory: process.memoryUsage() }}, event))
self.emit('message', _.merge({}, { process: { title: process.title, version: process.version, pid: process.pid, memory: process.memoryUsage() }}, event))
}

EventEmitter.call(this);
Expand Down
4 changes: 2 additions & 2 deletions lib/handlers/System.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
var EventEmitter = require('events').EventEmitter
var util = require('util')
var os = require('os')
var merge = require('lodash.merge')
var _ = require('lodash')

function System() {

var self = this

this.handle = function(event) {
self.emit('message', merge({}, { os: { hostname: os.hostname(), loadavg: os.loadavg(), mem: { total: os.totalmem(), free: os.freemem() }, type: os.type(), platform: os.platform(), release: os.release() }}, event))
self.emit('message', _.merge({}, { os: { hostname: os.hostname(), loadavg: os.loadavg(), mem: { total: os.totalmem(), free: os.freemem() }, type: os.type(), platform: os.platform(), release: os.release() }}, event))
}

EventEmitter.call(this);
Expand Down
4 changes: 2 additions & 2 deletions lib/handlers/Timestamp.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
var EventEmitter = require('events').EventEmitter
var util = require('util')
var merge = require('lodash.merge')
var _ = require('lodash')

function Timestamp() {

var self = this

this.handle = function(event) {
self.emit('message', merge({}, { timestamp: new Date() }, event))
self.emit('message', _.merge({}, { timestamp: new Date() }, event))
}

EventEmitter.call(this);
Expand Down
4 changes: 2 additions & 2 deletions lib/handlers/Tracer.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
var EventEmitter = require('events').EventEmitter
var util = require('util')
var merge = require('lodash.merge')
var _ = require('lodash')
var uuid = require('uuid').v4

function Tracer(_options) {
Expand All @@ -10,7 +10,7 @@ function Tracer(_options) {
var tracer = options.tracer || uuid()

this.handle = function(event) {
self.emit('message', merge({}, { tracer: tracer }, event))
self.emit('message', _.merge({}, { tracer: tracer }, event))
}

EventEmitter.call(this);
Expand Down
Loading
Loading