PM2 Module for logging events & logs from your PM2 processes to Discord via webhooks. This module is designed to be used with PM2, it is not a standalone application.
To install and setup pm2-discord-logger, run the following commands:
pm2 install pm2-discord-logger
interface Config {
/**
* Duration in seconds to aggregate messages.
* @default 1
* */
buffer_seconds?: number
/**
* Discord webhook url for logs
* @default null
* */
log_url: string | null
/**
* Discord webhook url for errors
* @default null
* */
error_url: string | null
/**
* Discord webhook url for events
* @default null
* */
event_url: string | null
// All of these are considered events and logged to the event channel
/**
* Enable kill event logs
* @default false
* */
kill: boolean
/**
* Enable exception event logs
* @default true
* */
exception: boolean
/**
* Enable restart event logs
* @default true
* */
restart: boolean
/**
* Enable exit event logs
* @default false
* */
exit: boolean
/**
* Enable delete event logs
* @default false
* */
delete: boolean
/**
* Enable start event logs
* @default true
* */
start: boolean
/**
* Enable stop event logs
* @default true
* */
stop: boolean
/**
* Enable online event logs
* @default true
* */
online: boolean
/**
* Enable restart overlimit event logs
* @default true
* */
'restart overlimit': boolean
}
- Create a Discord Webhook for your server. See this article for more information.
- Set your PM2 config values
- e.g:
pm2 set pm2-discord-logger:log_url https://discordapp.com/api/webhooks/123456789/abcdefghijklmnopqrstuvwxyz
pm2 set pm2-discord-logger:restart true
- You can set the same or different webhook for each channel but logs will not be recorded if the webhook is not set.
- Fork and clone the repo
- Install dependencies
yarn install
- Build the project in watch mode
yarn watch
- Copy the
package.json
file into thedist
folder
cp package.json dist
- Run the project locally in PM2
cd dist
pm2 install .
Core concept inspired by ben-sommer/pm2-discord