1.2.1 • Published 2 years ago
pm2-discord-ts v1.2.1
pm2-discord-ts
This is a PM2 Module for sending events from your PM2 process to Discord Webhook.
⚠️ This new version of the module is no longer the same as original style of (pm2-discord). You may still use the old one by installing the version 1.1.2.
Install
$ pm2 install pm2-discord-ts
Setup
pm2 set pm2-discord-ts:url <Webhook URL>
Events
Events are now in array.
The following events can be subscribed to:
- log - All standard out logs. Default:
true
- error - All error logs. Default:
true
- kill - Event fired when PM2 is killed. Default:
false
- exception - Any exceptions from your processes. Default:
false
- restart - Event fired when a process is restarted. Default:
true
- delete - Event fired when a process is removed from PM2. Default:
false
- stop - Event fired when a process is stopped. Default:
true
- restart overlimit - Event fired when a process is reaches the max amount of times it can restart. Default:
true
- exit - Event fired when a process is exited. Default:
false
- start - Event fired when a process is started. Default:
false
- online - Event fired when a process is online. Default:
false
# pm2 set pm2-discord-ts:events log | log,error
$ pm2 set pm2-discord-ts:events <events,events>
Options
- url - Webhook URL. Required.
- embeds - Send embeds instead of text. Default:
false
- includeProcessName - Include the process name in the message. Default:
true
- suppressError - Suppress the error if occured. Default:
false
- processTarget (string[] | null) - The process name/id to only emit for. Default:
null
- buffer (bool) - Enable/Disable buffering of messages by timestamp. Messages that occur with the same timestamp (seconds) will be concatenated together and posted as a single message. Default:
true
- bufferDuration (number) - Duration in seconds to aggregate messages. Has no effect if buffer is set to false. Min:
1
, Max:5
, Default:1
- maxQueue (number) - Number of messages to keep before the queue will be truncated. When the queue exceeds the value, a rate limit message will be sent. Min:
10
, Max:100
, Default:100
Always restart the module after changing any of the options.
# pm2 set pm2-discord-ts:buffer true
$ pm2 set pm2-discord-ts:<key> <value>
$ pm2 restart pm2-discord-ts
Embeds Preview:
- Log
- Error
API
import Log, { Events } from 'pm2-discord-ts';
import ANSI from 'strip-ansi';
const process = new Log({
events: [Events.Log, Events.Error],
suppressError: true,
processTarget: [ 'my-project' ]
});
process.start();
process.on("*", (data, event: Events) => {
console.log(`Process ${data.process.name} emitted event ${event}`);
});
// Emits on every standard process logs.
process.on("log", (data) => {
Channel.send({
content: ANSI(data.data)
});
})
Methods
- start(pause?: boolean) - Start listening to the bus.
- pause(toggle?: boolean) - Pause listening to the bus.
Todo
Done
- Add API
- Add PM2 Events
1.2.0
2 years ago
1.2.1
2 years ago
1.1.2-beta.2
2 years ago
1.1.2-beta.1
2 years ago
1.1.2-beta.4
2 years ago
1.1.2-beta.3
2 years ago
1.1.2-beta.6
2 years ago
1.1.2-beta.5
2 years ago
1.1.2
2 years ago
1.1.1
2 years ago
1.1.0
2 years ago
1.0.0
2 years ago