Tej-Logger
A minimal yet powerful logger for Node.js applications. It supports log, info, error, debug and warn. It also supports ANSI styles and colors. It also has an express middleware to log every incoming request.
Table of contents
Features
- Simple and minimal
- Express middleware to log every incoming request
- Log based on identifiers
- Supports log, info, error, debug and warn
- Supports ANSI styles and colors
- [UPCOMING] - Configuration for log levels and log file path
Install
npm install tej-logger
Express Middleware
import logHttpRequest from "tej-logger/express-middleware";
// Add this middleware to your express app before any other middleware
app.use(logHttpRequest);

Basic Usage
import TejLogger from "tej-logger";
const logger = new TejLogger("identifier");
logger.log("Hello World!");
Instance Defaults
Pass default metadata that is merged into every log emitted by this instance. Per-call metadata keys take precedence over instance defaults.
const logger = new TejLogger("PaymentService", {
defaults: { service: "billing", radar: true },
});
// Hook receives metadata: { service: "billing", radar: true }
logger.info("Invoice created");
// Per-call key overrides the instance default
// Hook receives metadata: { service: "billing", radar: false, invoiceId: "inv_1" }
logger.info("Debug detail", { radar: false, invoiceId: "inv_1" });
The radar key can also be set as a top-level shortcut:
// Equivalent to { defaults: { radar: true } }
const logger = new TejLogger("PaymentService", { radar: true });
When both radar and defaults.radar are provided, defaults.radar wins.
Log
logger.log("This is a log message");

Info
logger.info("This is an info message");

Error
logger.error("This is an error");
//or
logger.error(new Error("This is an error"));

Debug
logger.debug("This is a debug message");

Warning
logger.debug("This is a debug message");

Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
Support
A simple star to this project repo is enough to keep me motivated on this project for days. If you find your self very much excited with this project let me know with a star.
Author
Hirak Chhatbar
- Github: @hirakchhatbar
➤ License
Distributed under the MIT License. See LICENSE for more information.