@jacraig/woodchuck v1.2.33
WoodChuck - Logging Library
WoodChuck is a versatile logging library for TypeScript/JavaScript that simplifies the process of logging messages within your applications and is built with structured event data at its heart. It provides a flexible and extensible logging framework to help you track and understand the flow of your application.
Features
Easy Integration: Simple setup for quick integration into your projects.
Customizable Logging Levels: Define and use different logging levels to categorize and filter messages.
Extensible Plugins: Extend functionality with plugins for various output formats and destinations.
Structured Logging: Log structured event data to make it easier to analyze and understand.
Flexible Configuration: Configure the logger with a fluent interface to customize the logging experience.
Installation
npm i @jacraig/woodchuckUsage
- Configure the logger with a sink to output to.
import { Logger, ConsoleSink } from '@jacraig/woodchuck';
Logger.configure()
.minimumLevel("Information")
.writeTo(new ConsoleSink())
.build();- Log messages with different levels:
Logger.verbose("This is a verbose message: {key}", { "key": "value" });
Logger.debug("This is a debug message: {key}", { "key": "value" });
Logger.information("This is an information message: {key}", { "key": "value" });
Logger.warning("This is a warning message: {key}", { "key": "value" });
Logger.error("This is an error message: {key}", { "key": "value" }, new Error("This is an error"));
Logger.fatal("This is a fatal message: {key}", { "key": "value" }, new Error("This is a fatal error"));- Customize the logger with plugins:
Logger.configure()
.enrichWith(new UserAgentEnricher())
.enrichWith(new UrlEnricher())
.enrichWith(new CallerEnricher())
.formatUsing(new DefaultFormatter())
.minimumLevel("Information")
.writeTo(new ConsoleSink());- Or build your own plugins:
import { LogEventEnricher, LogEvent } from '@jacraig/woodchuck';
export class MyCustomPlugin implements LogEventEnricher {
public enrich(logEvent: LogEvent): void {
logEvent.properties["myProperty"] = "Something, something, something, dark side";
}
}Contributing
If you'd like to contribute to WoodChuck, please follow our contribution guidelines.
License
WoodChuck is licensed under the Apache 2 License.
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
12 months ago
1 year ago
1 year ago
1 year ago
12 months ago
12 months ago
11 months ago
12 months ago
12 months ago
11 months ago
11 months ago
11 months ago
11 months ago
10 months ago
10 months ago
10 months ago
1 year ago
10 months ago
10 months ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago