-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.js
62 lines (60 loc) · 2 KB
/
config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import dotenv from 'dotenv';
dotenv.config();
export default {
checkInterval: 5 * 1000, // 60 seconds (adjust as needed)
httpMonitor: {
urls: [
{
id: 'example-site', // Unique identifier for the monitor
name: 'Example Site',
description: 'This is an example website', // Optional description
url: 'https://www.example.com',
method: 'GET', // HTTP method (default: GET)
expectStatus: 200, // Expected HTTP status code (default: 200)
followRedirect: false, // Follow redirects (default: false)
},
],
},
sslMonitor: {
expirationThresholdDays: 14, // Warn if expiring within 14 days
sites: [
],
},
dnsMonitor: {
sites: [
{
name: "API",
url: "https://www.example.com",
dnsConfig: {
host: "example.com", // The domain to resolve
recordType: "A", // The type of DNS record (A, AAAA, MX, etc.)
expectedValue: "93.184.215.13", // The expected IP address or value
},
},
// Add more sites here
],
},
portMonitor: {
timeout: 5000, // Timeout in milliseconds
sites: [
],
},
pingMonitor: {
timeout: 5, // Timeout in seconds
sites: [
],
},
testMode: false, // Set to true for testing, false for actual deployment
deployment: {
method: 'local', // Default deployment method (local, ftp, or git)
},
escalationThreshold: 5, // Number of consecutive failures before escalating to 'down'
initialDelay: 2, // Number of initial consecutive failures to ignore (optional)
incidentMessages: {
initial:
'*Automated system alert* - We are sensing a disruption in our {{type}} monitor. This means that end users may experience issues with our "{{site.name}}". This may be temporary.',
escalated:
`This issue has been ongoing for a number of consecutive checks and has been escalated to a **severe** status. A human has been alerted and will take action as soon as possible. For support, please contact us on the information present on this website\'s homepage.`,
resolved: 'The issue with our system "{{site.name}}" has been resolved.',
},
};