More improvements to config

This commit is contained in:
ybouane 2024-10-11 19:48:48 -04:00
parent b658eeb08b
commit d9f506f81a
2 changed files with 20 additions and 16 deletions

View file

@ -20,11 +20,12 @@ https://pulse.ybouane.com
Pulse can be configured through the "config.js" file and it looks like this Pulse can be configured through the "config.js" file and it looks like this
```javascript ```javascript
export default { export default {
verbose : true, interval : 15, // Interval in minutes between each pulse
nDataPoints : 90, // Number of datapoints to display on the dashboard nDataPoints : 90, // Number of datapoints to display on the dashboard
responseTimeGood : 300, // In milliseconds, this and below will be green responseTimeGood : 300, // In milliseconds, this and below will be green
responseTimeWarning : 600, // In milliseconds, above this will be red responseTimeWarning : 600, // In milliseconds, above this will be red
timeout : 5000, // In milliseconds, requests will be aborted above this. (Do not ) timeout : 5000, // In milliseconds, requests will be aborted above this
verbose : true, // Whether or not to output pulse messages in the console
readableStatusJson : true, // Format status.json to be human readable readableStatusJson : true, // Format status.json to be human readable
logsMaxDatapoints : 200, // Maximum datapoints history to keep (per endpoint) logsMaxDatapoints : 200, // Maximum datapoints history to keep (per endpoint)
telegram : {}, // optional, tokens to send notifications through telegram telegram : {}, // optional, tokens to send notifications through telegram
@ -42,7 +43,7 @@ export default {
{ {
id : 'homepage', // optional id : 'homepage', // optional
name : 'Homepage', // optional name : 'Homepage', // optional
link : 'https://www.google.com', // optional, for notifications and dashboard only, [defaults to endpoint.url], can be disabled by settig it to false link : 'https://www.google.com', // optional, for notifications and dashboard only, [defaults to endpoint.url], can be disabled by setting it to false
url : 'https://www.google.com', // required url : 'https://www.google.com', // required
request : { // optional, fetch options request : { // optional, fetch options
method: 'GET', method: 'GET',

View file

@ -1,42 +1,45 @@
export default { export default {
verbose : true, interval : 15, // Interval in minutes between each pulse
nDataPoints : 90, nDataPoints : 90, // Number of datapoints to display on the dashboard
responseTimeGood : 300, // In milliseconds, this and below will be green responseTimeGood : 300, // In milliseconds, this and below will be green
responseTimeWarning : 600, // In milliseconds, above this will be red responseTimeWarning : 600, // In milliseconds, above this will be red
timeout : 5000, // In milliseconds, requests will be aborted above this. (Do not ) timeout : 5000, // In milliseconds, requests will be aborted above this
verbose : true, // Whether or not to output pulse messages in the console
readableStatusJson : true, // Format status.json to be human readable readableStatusJson : true, // Format status.json to be human readable
logsMaxDatapoints : 200, // Maximum datapoints history to keep (per endpoint) logsMaxDatapoints : 200, // Maximum datapoints history to keep (per endpoint)
telegram : { telegram : { // optional, tokens to send notifications through telegram
botToken : '', // Contact @BotFather on telegram to create a bot
chatId : '',// Send a message to the bot, then visit https://api.telegram.org/bot<token>/getUpdates to get the chatId
}, },
slack : { slack : { // optional, tokens to send notifications through slack
botToken : '', botToken : '',
channelId : '', channelId : '',
}, },
discord : { discord : { // optional, tokens to send notifications through discord
webhookUrl : '', webhookUrl : '',
}, },
twilio : { twilio : { // optional, tokens to send notifications through twilio (SMS)
accountSid : '', accountSid : '',
accountToken : '', accountToken : '',
toNumber : '', toNumber : '',
twilioNumber : '', twilioNumber : '',
}, },
sendgrid : { sendgrid : { // optional, tokens to send notifications through sendgrid (Email)
apiKey : '', apiKey : '',
toEmail : '', toEmail : '',
toFromEmail : '', toFromEmail : '',
}, },
consecutiveErrorsNotify : 1, consecutiveErrorsNotify : 1, // After how many consecutive Errors events should we send a notification
consecutiveHighLatencyNotify : 3, consecutiveHighLatencyNotify : 3, // After how many consecutive High latency events should we send a notification
sites : [ sites : [ // List of sites to monitor
{ {
id : 'google', // optional id : 'google', // optional
name : 'Google', name : 'Google',
endpoints : [ endpoints : [ // Each site is a bunch of endpoints that can be tested
{ {
id : 'homepage', // optional id : 'homepage', // optional
name : 'Homepage', // optional name : 'Homepage', // optional
link : 'https://www.google.com', // optional, for notifications and dashboard only, [defaults to endpoint.url], can be disabled by settig it to false link : 'https://www.google.com', // optional, for notifications and dashboard only, [defaults to endpoint.url], can be disabled by setting it to false
url : 'https://www.google.com', // required url : 'https://www.google.com', // required
request : { // optional, fetch options request : { // optional, fetch options
method: 'GET', method: 'GET',