use a more detailed example

pull/5/head
lyc8503 2023-11-19 12:14:33 +08:00 committed by GitHub
parent 459934f852
commit ee1721ee22
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 38 additions and 17 deletions

View File

@ -1,10 +1,12 @@
// Refer to https://github.com/lyc8503/UptimeFlare/wiki/Configuration for detailed information
const config = {
// Your locale for server-side callback. (client-side will always follow browser settings)
dateLocale: 'zh-CN',
// Your timezone for server-side callback. (client-side will always follow browser settings)
timezone: 'Asia/Shanghai',
page: {
// Title for your status page
title: "lyc8503's Status Page",
// Links shown at the header of your status page, could set `highlight` to `true`
links: [
{ link: 'https://github.com/lyc8503', label: 'GitHub' },
{ link: 'https://blog.lyc8503.site/', label: 'Blog' },
@ -12,33 +14,52 @@ const config = {
],
},
callback: async (statusChangeMsg: string) => {
// Add your own callback here
// Write any typescript here
// Example `statusChangeMsg` string:
// "❌My Blog went down at 2023/11/18 14:08:59 with error Timeout after 10000ms"
// "✔My Blog came back up at 2023/11/18 14:10:48 after 2 minutes of downtime"
// Example:
// await fetch('https://api.example.com/callback?msg=' + statusChangeMsg)
},
// Define all your monitors here
monitors: [
// Example HTTP Monitor
{
id: 'github',
// `id` should be unique, history will be kept if the `id` remains constant
id: 'foo_monitor',
// `name` is used at status page and callback message
name: 'Github Monitor',
method: 'GET',
target: 'https://github.com'
},
{
id: 'cloudflare',
name: 'Cloudflare Monitor',
method: 'GET',
target: 'https://cloudflare.com',
timeout: 5000,
// `method` should be a valid HTTP Method
method: 'POST',
// `target` is a valid URL
target: 'https://example.com',
// [OPTIONAL] `expectedCode` is an array of acceptable HTTP response codes, if not specified, default to 2xx
expectedCode: [200],
// [OPTIONAL] `timeout` in millisecond, if not specified, default to 10000
timeout: 10000,
// [OPTIONAL] headers to be sent
headers: {
'User-Agent': 'Uptimeflare',
}
'Authorization': 'Bearer YOUR_TOKEN_HERE'
},
// [OPTIONAL] body to be sent
body: "Hello, world!",
// [OPTIONAL] if specified, the response must contains the keyword to be considered as operational.
responseKeyword: "success"
},
// Example TCP Monitor
{
id: 'sshtest',
name: 'SSH Server',
id: 'test_tcp_monitor',
name: 'Example TCP Monitor',
// `method` should be `TCP_PING` for tcp monitors
method: 'TCP_PING',
target: '1.1.1.1:22',
// `target` should be `host:port` for tcp monitors
target: '1.2.3.4:22',
timeout: 5000
}
]
}
// Don't forget this, otherwise compilation fails.
export default config