@railtownai/winston
v2.0.22
Published
@railtownai/winston is a transport to ship your logs to railtown.ai
Downloads
6
Keywords
Readme
Railtown AI Winston Logger
winston-railtown is a transport to ship your logs to railtown.ai
Install
$ npm install --save @railtownai/winston
Options
In adition to the options accepted by winston transport, Railtown Transport accepts the following options:
token
{string} - Your railtown token [required]ignoreErrors
{string[] | RegExp[]} - An array of error messages to ignore [optional]
You can either provide the token through the environment variable 'RAILTOWN_TOKEN' or pass it through the options.
Usage
ESM / TypeScript
// ESM / TypeScript
import RailtownAiTransport from "@railtownai/winston";
const logger = winston.createLogger({
transports: [
new RailtownAiTransport({
token: YOUR_RAILTOWN_AI_TOKEN,
}),
],
});
CommonJS
// If you're using CommonJS
const { default: RailtownAiTransport } = require("@railtownai/winston");
const logger = winston.createLogger({
transports: [
new RailtownAiTransport({
token: YOUR_RAILTOWN_AI_TOKEN,
}),
],
});
Manually Logging Errors with additional properties
Import winstonLogger and use as follows:
try {
// code to try
} catch (error) {
const logError = {
message: error.message,
stack: error.stack,
userId: "123456789",
projectId: "abcdefg",
};
winstonLogger.error(logError);
}
Examples
Ignoring Errors
You can ignore errors by passing an array of error messages to ignore. It also supports regex.
const logger = winston.createLogger({
transports: [
new RailtownAiTransport({
token: YOUR_RAILTOWN_AI_TOKEN,
ignoreErrors: [
"Error: Request failed with status code 404",
/Exact Error Message/,
"Another Error To Ignore",
],
}),
],
});