fast-node-logger
Version:
fast file logger base on pino
83 lines (53 loc) • 2.27 kB
Markdown
this package provides:
- quick start with default configuration.
- an instance of [pino](https://www.npmjs.com/package/pino) logger.
- flexibility of pino with options and prettify the output.
- create log files in `logs` directory of root project directory.
- delete old log files.
- type safe with typescript.
This is an opinionated package that limit the flexibility of awesome [pino](https://www.npmjs.com/package/pino) package. if you need full functionality please use original package.
```js
import { createLogger } from "fast-node-logger";
const logger = await createLogger();
logger.info(`Logger is Ready!`);
```
You can use the complimentary extension for VSCode [writelog-snippets](https://marketplace.visualstudio.com/items?itemName=saostad.writelog-snippets).
```js
const options: Options = {
logDir: "./my-logs",
retentionTime: 604800, // for 7 days
};
await createLogger(options);
```
[ ](https://saostad.github.io/fast-node-logger/)
```js
import { createLogger, Options } from "fast-node-logger";
const options: Options = {
level: "trace",
};
const logger = await createLogger(options);
```
returns an instance of pino
```js
import { createLogger } from "fast-node-logger";
const logger = await createLogger();
logger.info(`Logger is Ready!`);
```
a shortcut for `logger.info(message)` with ability to additionally print to console with second parameter `{stdout: true}`
```js
import { writeLog, createLogger, Options } from "fast-node-logger";
await createLogger();
writeLog(`logger is created!`, { stdout: true, level: "trace" });
```
- [ ] add [recommended log rotation](https://github.com/pinojs/pino/blob/master/docs/help.md#log-rotation)
- [ ] add ability to integrate with cloud log services (e.g. [sentry](https://sentry.io))