Logger.JS
📖 About
This is a simple logger for NodeJS, made in TypeScript, with the objective of make beautiful and easy to read logs.
Originally made for twitch.js, we decided to make it in a separate package, so that it can be used in other projects without the need to install the entire twitch.js package or copy and maintain the code.
📦 Installing
To install Logger.JS in your project, you need first to have NodeJS installed, then run the following command in your terminal:
NPM:
npm install @promisepending/logger.js
Yarn:
yarn add @promisepending/logger.js
⌨ Use example
To use Logger.JS in your project, you need to import the logger class, then create an instance of that class, passing as parameter your logger configurations as an object, or nothing if you want to use the default configurations.
const { Logger } = require('@promisepending/logger.js');
// or
import { Logger } from '@promisepending/logger.js';
const logger = new Logger({
prefix: 'Logger.JS', // This will be the prefix of all logs (default: null)
disableFatalCrash: true, // If true, the logger will not crash the process when a fatal error occurs (default: false)
allLineColored: true, // If true, the whole line will be colored instead of only the prefix (default: false)
coloredBackground: false, // If true, the background of the lines will be colored instead of the text (default: false)
debug: false, // If true, the logger will log debug messages (default: false)
fileProperties: { // This is the configuration of the log files
enable: true, // If true, the logger will log to files (default: false) [NOTE: If false all below options will be ignored]
logFolderPath: './logs', // This is the path of the folder where the log files will be saved (default: './logs')
enableLatestLog: true, // If true, the logger will save the latest log in a file (default: true)
enableDebugLog: true, // If true, the logger will save the debug logs in a file (default: false)
enableErrorLog: true, // If true, the logger will save the error logs in a file (default: false)
enableFatalLog: true, // If true, the logger will save the fatal logs in a file (default: true)
generateHTMLLog: true, // If true, the logger will generate a HTML file with the logs otherwise a .log file (default: false)
compressLogFilesAfterNewExecution: true, // If true, the logger will compress the log files to zip after a new execution (default: true)
},
});
After creating the logger instance, you can use the methods to log your messages, as shown below:
logger.info('This is an info message');
logger.warn('This is a warning message');
logger.error('This is an error message');
logger.debug('This is a debug message');
logger.fatal('This is a fatal message');
Results:
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
📜 Changelog
See the CHANGELOG file for details.
🤝 Contributing
Contributions is what makes the open source community an amazing place and its a wonderful place to learn, inspire and create. Any contribution you make will be very much appreciated.
- Make a Fork of the Project
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
😉 Authors
LoboMetalurgico |
SpaceFox |
Made with