pino-discord-transport

2.0.8 • Public • Published

pino-discord-transport

npm version npm downloads

This module provides a transport for pino to send logs over discord webhooks.

Install

yarn add pino-discord-transport

Usage

For test purposes

import { createTransport } from 'pino-discord-transport';
import { pino }  from 'pino';

const options = {
  webhookUrl: 'add your webhook url here',
  webhookType: 1,
  title: 'Test'
};

const logger = pino(createTransport(options));

logger.info('Hello World!');

The code above should produce this message on your discord chat

message-type-info

This was created to be used within a Fastify application.

Here is an example on how to to use this transport within a fastify application.

import Fastify from 'fastify';
import { createTransport } from 'pino-discord-transport';
import { pino } from 'pino';

const options = {
  webhookUrl: 'add your webhook url here', 
  webhookType: 1, // optional, defaults to 1 if not specified
  title: 'Test',
};

const discordLogger = pino(createTransport(options));

const fastify = Fastify({
  logger: discordLogger,
});

const server = async () => {
  await fastify.ready();

  try {
    fastify.listen({
      host: 'localhost',
      port: 3000,
    });
  } catch (err) {
    fastify.log.error(err);
    process.exit(1);
  }
};

server();

You can also exclude some tags from being sent with the removeTags property

const logger = pino(createTransport(options, ['pid', 'hostname']));

It's also possible to search for specific keywords in the log message and stop them from being sent using the filterMsgByKeyword property

const logger = pino(createTransport(options, [], ["hello"]));

The log message is parsed to lowercase before the search, so you should add only lowercase keywords.

Contribution

Feel free to contribute to this package by opening up a pull request.

This package was inspired on the package pino-slack-transport. I believe the creator of the package is due some credit.

Package Sidebar

Install

npm i pino-discord-transport

Weekly Downloads

5

Version

2.0.8

License

MIT

Unpacked Size

6.15 kB

Total Files

4

Last publish

Collaborators

  • nickolasdeluca