@barry-bot/logger
is a powerful logger package that provides a flexible and customizable logging solution for Node.js applications. It offers various features such as log severity levels, error handling, log formatting, and integration with Sentry for error reporting.
- Log Severity Levels: Log messages with different severity levels such as
DEBUG
,ERROR
,FATAL
,INFO
,TRACE
, andWARN
. - Sentry Integration: Integrate with Sentry for advanced error tracking and reporting.
- Flexible Configuration: Customize the logger options to control log behavior, minimum severity level, date display, and more.
- Log Formatting: Format log messages using printf-style string interpolation.
- Colorful Output: Log messages are displayed with colors based on their severity level for easy visual identification.
Node.js version 20 or later is required.
npm install @barry-bot/logger
# or
yarn add @barry-bot/logger
import { Logger, LogSeverity } from "@barry-bot/logger";
// Create a new logger instance.
const logger = new Logger({
minSeverity: LogSeverity.INFO,
showDate: true,
sentry: {
dsn: "YOUR_SENTRY_DSN",
minSeverity: LogSeverity.Error
}
});
// Log messages with different severity levels.
logger.trace("This is a trace message");
logger.debug("This is a debug message");
logger.info("This is an info message");
logger.warn("This is a warning message");
logger.error("This is an error message");
logger.fatal("This is a fatal message");
// Log formatted messages using printf-style string interpolation.
logger.info("Hello %s", "World");
// Log an error.
const error = new Error("Oh no!");
logger.fatal("An error has occurred:", error);
Contributions, bug reports, and feature requests are welcome! Please refer to the contribution guidelines for detailed information on how to contribute to the project.
Even if you're not a developer, you can still support the project in other ways. Consider donating to my Ko-fi page to show your appreciation and help me continue improving Barry. Every contribution is highly appreciated!
This package is licensed under the MIT License. See the LICENSE file for more information.
Please note that the licenses may differ between different parts of the project. Make sure to refer to the appropriate license file for each component.