Logging package for my projects
Go to file
2022-11-08 22:57:03 +02:00
src fix a thing + update readme 2022-11-08 22:57:03 +02:00
test gargantuan brainfart 2022-11-08 22:03:35 +02:00
.eslintrc.json gargantuan brainfart 2022-11-08 22:03:35 +02:00
.gitignore bugfix, test & readme 2022-11-06 17:21:10 +02:00
index.js
package.json fix a thing + update readme 2022-11-08 22:57:03 +02:00
README.md fix a thing + update readme 2022-11-08 22:57:03 +02:00
yarn.lock

Navy's logger

Simple logger I wrote to have a unified system for logging throughout my projects.

TODO

  • Automatic file rotation, currently only rotates files on startup
  • Discord webhook, need to write a separate package for that, don't want to add the entirety of d.js as a dep just for a webhook

Features

Split into Master and Client for logging between processes, where master resides on the master process and the clients on the spawned processes.
Should be fairly trivial to modify it to work across nodes with websockets.

Note
When logging from a child process, the master logger expects the child process to be be in a wrapper containing at the very least an ID property to work properly (used for identifying which child the message came from).
Notably the logger will work with just a raw child process object though, it will lack the identifier.

The child processes are expected to be attached with the attach() method found in the master logger. This will attatch a listener for the 'message' event.

Logger Options

{ 
    customTypes: [], // Log types, defaults are 'error', 'warn', 'info', 'debug', 'status'. Each one of these has an associated shorthand function, the custom ones will receive one too, e.g. adding 'access' to the custom types will add a logger.access() function
    customStreams: [], // File streams, by default there are streams for error and default
    customTypeMapping: {}, // This maps a type to a stream, e.g. adding "warn": "error" will pipe any warnings to the error log file
    customColors: {}, // Supports any colours chalk.js supports, e.g. "warn": "green" will turn warning outputs green
    debug: false 
}