Commit Graph

1485 Commits

Author SHA1 Message Date
Tarun Singh f6c1b92fc6 Added http type check and tags based design 2023-07-17 02:01:10 -04:00
Louis Lam 25c8196641
Support Node.js 20 again (#3431)
* Support >= Node.js 20.4.0

* Improve the Node.js warning, ban 20.0 to 20.3

* Update

* Minor
2023-07-17 13:17:00 +08:00
Louis Lam 80927332cb Merge remote-tracking branch 'origin/master' into feat/monitor-list-improved-filtering 2023-07-16 21:04:46 +08:00
Louis Lam 21d556528f
Fix #3420 timezone issue (#3425) 2023-07-15 23:23:27 +08:00
Louis Lam 357466cc90 Minor 2023-07-15 21:27:39 +08:00
Louis Lam b038d09349 Minor 2023-07-15 21:26:41 +08:00
Louis Lam c6d0c431bd
Merge pull request #3080 from duanearnett/feature/add-channel-notification-for-slack
Adds configurable @channel notification for Slack integrations
2023-07-15 18:41:17 +08:00
Louis Lam 345e61abca Merge remote-tracking branch 'origin/master' into feat/badge-generator-placeholders
# Conflicts:
#	package-lock.json
#	package.json
2023-07-15 01:05:34 +08:00
Louis Lam dd1526deff
Merge pull request #3421 from louislam/some-update
Some update
2023-07-14 18:07:42 +08:00
Louis Lam be26bb75d9 Update version handling 2023-07-14 18:02:49 +08:00
Louis Lam 99fb5836e2
Add SMSC (СМСЦентр) provider notification (#3335) By @FlatronBuda
* Add SMSC, code from #3334

Co-authored-by: FlatronBuda <>

* Update server/notification-providers/smsc.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update server/notification-providers/smsc.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update server/notification-providers/smsc.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update according to @FlatronBuda

* Move to the regional list

---------

Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-07-14 14:29:35 +08:00
Louis Lam 2f5a565ce4
Merge pull request #3381 from n-thumann/fix_ipv6_handling
Fix handling of IPv6 addresses in getClientIP
2023-07-14 12:34:59 +08:00
Tarun Singh 6f4af30701 Merge branch 'master' of https://github.com/louislam/uptime-kuma into status-page-expiry 2023-07-13 20:02:50 -04:00
Tarun Singh b1f266ceb1 Added expiry changes to status page and fixes 2023-07-13 20:00:23 -04:00
Muhammed Hussein karimi 6bece8796e
feat: json-query monitor added (#3253)
*  feat: json-query monitor added

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: import warning error

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: br tag and remove comment

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: supporting compare string with other types

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: switch to a better lib for json query

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: better description on json query and using `v-html` in jsonQueryDescription element to fix `a` tags

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: result variable in error message

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: typos in json query description

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* 📝 docs: `HTTP(s) Json Query` added to monitor list in `README.md`

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: needed white space in `README.md`

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Nostr dm notifications (#3051)

* Add nostr DM notification provider

* require crypto for node 18 compatibility

* remove whitespace

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* move closer to where it is used

* simplify success or failure logic

* don't clobber the non-alert msg

* Update server/notification-providers/nostr.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* polyfills required for node <= 18

* resolve linter warnings

* missing comma

---------

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Drop nostr

* Rebuild package-lock.json

* Lint

---------

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: zappityzap <128872140+zappityzap@users.noreply.github.com>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-07-13 23:37:26 +08:00
Louis Lam e7d1b4e14a
Merge pull request #3174 from chakflying/fix/push-monitor-safe-restart
Fix: Use safeBeat in push monitor
2023-07-13 23:14:28 +08:00
Louis Lam e5c6783781
Merge pull request #3205 from woj-tek/master
Add option to use ApiKeys in Twilio in addition to main account credentials
2023-07-13 23:11:05 +08:00
Louis Lam d825dbf828
Merge pull request #3188 from chakflying/fix/radius-timeout
Fix: Set radius connection timeout to monitor default
2023-07-09 22:47:39 +08:00
Louis Lam 293015ff35 Parse `x-www-form-urlencoded` for /test-webhook 2023-07-09 18:53:57 +08:00
Louis Lam 18d8b3a8e0 Merge remote-tracking branch 'origin/master' into feat/webhook-custom-body 2023-07-09 18:20:06 +08:00
Louis Lam cdb38d49eb
Merge pull request #3380 from chakflying/experiment/incremental-vacuum-job
Feat: Run incremental_vacuum and optimize
2023-07-08 21:59:58 +08:00
Louis Lam fe40d819bd Update send403 to sendHttpError 2023-07-08 21:34:58 +08:00
Louis Lam 3dbd8277f0 Merge remote-tracking branch 'origin/master' into feat/global-status-page-badge
# Conflicts:
#	.gitignore
2023-07-08 21:28:57 +08:00
Louis Lam ed6b4e5ae5 Merge remote-tracking branch 'origin/master' into miles/invert-keyword
# Conflicts:
#	server/database.js
2023-07-08 16:19:44 +08:00
Louis Lam 3b9c95a8a8
Prevent users from specifying an unexpected executable as Chromium (#3348) 2023-07-08 15:52:09 +08:00
nthumann cdf6922bdd
Fix handling of IPv6 addresses in getClientIP 2023-07-08 00:02:01 +02:00
Nelson Chan 9954ba82e7 Feat: Run incremental_vacuum and optimize 2023-07-08 04:57:53 +08:00
Louis Lam 13ae878ee8
Merge pull request #3347 from louislam/1.22.X
1.22.x merge to master
2023-07-05 11:35:36 +08:00
Tarun Singh 4ea5771f97 Status page certificate expiry 2023-07-04 19:37:45 -04:00
DevMirza 1774bb86dc
🐛 fix lint warning (#3355) 2023-07-04 23:46:36 +08:00
Francisco Marques bd5496d267
Fixed update checker making requests to uptime.kuma.pet even when turned off (#2281)
* fix: update checker

- fixed bug where it would make the request to uptime.kuma.pet regardless of the `checkUpdate` config;
- defined constants in the top of the document for easier configuration/documentation;
- removed unnecessary compareVersions: we were comparing the same var on both sides res.data.beta, so it will always be equal.

* improvement: better logging and added doc

* improved UPDATE_CHECKER_INTERVAL_MS const

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-07-03 15:28:03 +08:00
Louis Lam df8fcffb19 Drop unused code 2023-07-03 14:50:30 +08:00
Louis Lam 8c60e902e1 Remove an unused variable 2023-07-01 22:44:33 +08:00
Louis Lam ccc39b9516 Move all old db patch files to `db/old_migrations/` 2023-07-01 20:54:47 +08:00
Louis Lam de74efb2e6
Merge pull request #3169 from janow25/docker-health-check
Added Docker Health Status Support
2023-07-01 02:55:05 +08:00
Louis Lam e26abc3156 Improve the setup database 2023-07-01 02:48:42 +08:00
Louis Lam d286c534bd Improve the setup database for embedded MariaDB 2023-06-30 22:17:07 +08:00
Louis Lam 7975caf29e Update db migration and dockerfile 2023-06-30 17:26:37 +08:00
Louis Lam 16a1a66e09 Merge remote-tracking branch 'origin/master' into 2.0.X
# Conflicts:
#	docker/alpine-base.dockerfile
#	docker/debian-base.dockerfile
#	docker/dockerfile
#	package.json
#	server/database.js
#	server/jobs/util-worker.js
#	server/model/maintenance.js
#	server/model/monitor.js
#	server/routers/api-router.js
#	server/server.js
#	server/uptime-kuma-server.js
2023-06-30 13:38:56 +08:00
Louis Lam 9ee2780e9e
Merge pull request #2871 from pruekk/chore/missing-notificationList
chore: notification toggle missing when import from backup
2023-06-29 22:42:09 +08:00
Nelson Chan a386f1fc9e
[Experiment] Use incremental vacuum to speed up delete? (#2800)
* DB: Use incremental vacuum

* Chore: Add log for delete monitor exec. time

* WIP: Test synchronous NORMAL
2023-06-29 22:41:01 +08:00
Nelson Chan 3e5e7e6e32 Fix: Incorrect options for cert-exp badge 2023-06-29 07:12:19 +08:00
Nelson Chan 0e725569e5 Feat: Add placeholders for badge generator
Chore: Save as dev dep.
2023-06-29 07:11:58 +08:00
Louis Lam 2e2747fb52 Handling DATE_ADD 2023-06-27 20:57:34 +08:00
Louis Lam 5388a37a26 Fix port NaN not working in MariaDB 2023-06-27 20:57:34 +08:00
Louis Lam 4f6035899d
Real browser monitor type (#3308) 2023-06-27 15:54:33 +08:00
Louis Lam dd77baabe1
Merge pull request #3234 from kefoster951/fix_redis_auth
Fix redis authentication reattempt issue
2023-06-27 15:21:30 +08:00
Louis Lam 820f2eec9f Merge remote-tracking branch 'origin/1.23.X' 2023-06-26 21:38:12 +08:00
Nelson Chan 7cc9783436 Fix: Active needs to return bool instead of 0 2023-06-26 13:21:51 +08:00
Louis Lam b4b6e07e6b
Merge pull request #3310 from chakflying/chore/auth-logging
Chore: Add logging for failed auth
2023-06-26 12:54:01 +08:00
Tarun Singh 7a34103da6 Added fix to remove children when type changed 2023-06-25 22:44:15 -04:00
Nelson Chan c9d6e576ab Chore: Remove redundant assign
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-06-26 04:59:55 +08:00
Nelson Chan 97d38ee1a8 Feat: Add custom body for Webhook Notif. 2023-06-26 04:59:55 +08:00
Nelson Chan cc94609423 Chore: Add logging for failed auth 2023-06-26 04:49:49 +08:00
Lasse Bang Mikkelsen a00561ff09
Strip trailing slashes to avoid 404 2023-06-18 18:28:30 +02:00
Kenneth Foster 6708eed121 Fixed error handling if client is closed 2023-06-14 11:49:33 -04:00
kefoster951 3c56a6f395
Merge branch 'louislam:master' into fix_redis_auth 2023-06-14 11:47:44 -04:00
Louis Lam 2b46693995
Merge pull request #3239 from madnight/master
Fix: prometheus monitor_status metric has 4 values
2023-06-13 23:09:29 +08:00
kefoster951 d37c33ad42
Update server/util-server.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-06-12 11:06:20 -04:00
Louis Lam c4c3fc81b2
Merge pull request #2693 from julian-piehl/group-monitors
Group monitors
2023-06-11 14:09:02 +08:00
Fabian Beuke 37ae8eb44a
Fix: prometheus monitor_status metric has 4 values
The prometheus monitor_status metric has actually 4 values. This can easily be verified by looking up the related source code or by using the metric in grafana an see values like 2 (which indicates timeout).
2023-06-10 20:22:33 +02:00
Kenneth Foster 8897385690 Fixed linting 2023-06-09 16:26:02 -04:00
Kenneth Foster 6132a45c7c fixed when auth is needed but not provided 2023-06-09 16:06:33 -04:00
Kenneth Foster f68452c47a Added changes to stop auth attempts after an error 2023-06-09 14:54:17 -04:00
Nelson Chan 58ec53fb1d Fix: Try to close mysql connection properly 2023-06-06 20:28:51 +08:00
duane 9a8bea5761 Changes 'Mention Channel' -> 'Notify Channel'
- Updates variable names
- Updates any Slack mention references
2023-06-01 08:23:13 -05:00
Peace 56f448bfe5
fix: maintenance heredity 2023-05-31 21:29:20 +02:00
Peace 2b46da0f47
style: fix linting 2023-05-31 21:19:46 +02:00
Peace 9bd76c2795
Merge branch 'master' into group-monitors 2023-05-31 20:51:33 +02:00
duane 376d84c742
Merge branch 'master' into feature/add-channel-notification-for-slack 2023-05-31 10:31:33 -05:00
Louis Lam 343a1d3344
Merge pull request #3203 from CommanderStorm/applied_timezone_formatting
chore: Made sure that every notification provider uses `timezone`/`localTime`
2023-05-30 20:36:32 +08:00
Wojciech Kapcia f3fe392ec4
Add option to use ApiKeys in Twilio in addition to main account credentials 2023-05-29 19:30:33 -04:00
Frank Elsinga f3c09f2bbd made every Notification provider supply time like dingding after #3152 2023-05-29 19:24:40 +02:00
Louis Lam 8ed2b59410 Resolve conflict 2023-05-26 21:38:51 +08:00
Louis Lam 0b8dddba24 Merge remote-tracking branch 'origin/master' into skaempfe#2593
# Conflicts:
#	server/model/monitor.js
#	src/pages/Details.vue
2023-05-26 21:32:58 +08:00
Louis Lam bc95875aa0
Merge pull request #3156 from maximilian-krauss/feat/add-pushover-ttl
feat: Adds message ttl to pushover notification
2023-05-26 18:18:24 +08:00
Louis Lam c1efe0f26d Add a warning for Node.js >= 20 2023-05-26 18:09:05 +08:00
Maximilian Krauß a0d0d5b015 fix: sends pushover ttl only if defined 2023-05-26 07:27:43 +02:00
Maximilian Krauß 8d05d80a5f feat: Adds message ttl to pushover notification 2023-05-26 07:27:43 +02:00
duane 5200e10aab Removes ternary operator for Slack channel mention 2023-05-23 10:29:18 -05:00
Nelson Chan f1a396b0f7 Fix: Align radius timeout to default 2023-05-23 18:18:54 +08:00
Nelson Chan f70b971810
Fix: Improve error message
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-05-21 15:42:13 +08:00
duane 00f733d352 Adds ability to notify channel when Slack webhook triggered
- Adds field to toggle channel mentions on/off for Slack integration
- Adds special mention for @channel when enabled

Reference:
[Slack docs](https://api.slack.com/reference/surfaces/formatting#special-mentions)
2023-05-19 11:01:08 -05:00
Nelson Chan 317024ed72 Fix: Use safebeat for push monitor 2023-05-19 18:52:00 +08:00
Janne Nowak f604d96c5b splited if to inner if 2023-05-18 09:55:33 +02:00
Janne Nowak f30f00655f small fix for down containers 2023-05-17 23:18:29 +02:00
Janne Nowak 891f09def7 removed log 2023-05-17 19:15:10 +02:00
Janne Nowak 6b5e179bb0 linting 2023-05-17 19:02:34 +02:00
Janne Nowak f653aba735 added docker health status 2023-05-17 18:52:28 +02:00
Louis Lam bb15fa0179
Merge pull request #3154 from chakflying/fix/clear-data-remove-worker-thread
Fix: Remove use of worker threads in clear-old-data
2023-05-16 19:51:20 +08:00
Louis Lam 8d24891b8e
Merge pull request #3054 from TechWilk/keyword-not-found-whitespace
Trim before truncating "keword not found" message
2023-05-13 18:36:04 +08:00
Nelson Chan 80c8fd7372 Chore: Remove util-worker 2023-05-13 01:51:23 +08:00
Nelson Chan a27386bb92 Fix: Use croner for clear-old-data 2023-05-13 00:59:58 +08:00
AnnAngela ce70b3fc62
feat: add a space to separate the words 2023-05-12 22:14:59 +08:00
AnnAngela 06fba5b55a
feat: show time as server timezone in dingding notification 2023-05-12 22:04:44 +08:00
Louis Lam 7f5d0e5490 Merge remote-tracking branch 'origin/1.21.X'
# Conflicts:
#	package-lock.json
2023-05-09 00:42:11 +08:00
Louis Lam 0eaaa8b6fa Minor 2023-05-08 22:52:41 +08:00
Louis Lam 5cd506e340 Minor 2023-05-08 22:39:32 +08:00
Louis Lam f0beccf6bf Fix `Same As Server Timezone` do not save correctly 2023-05-08 22:14:58 +08:00
Louis Lam 72c16c3aa2 Fix eslint warnings 2023-05-08 04:26:11 +08:00
Louis Lam d23cb0b382 Fix maintenance do not start after 1.21.2 2023-05-08 04:08:30 +08:00
Louis Lam 8207f16396 Merge remote-tracking branch 'origin/master' into ntfy-bearer-authorization 2023-04-25 18:07:52 +08:00
Christopher Wilkinson 0e516a42e5
Trim before truncating "keword not found" message 2023-04-11 16:57:30 +01:00
Louis Lam 6356b1e50a
Merge pull request #2961 from chakflying/feat/flush-wal
Chore: Flush WAL on shutdown
2023-04-11 18:53:58 +08:00
Josua Frank 11f4cb8725
Merge branch 'louislam:master' into ntfy-bearer-authorization 2023-04-10 16:06:53 +02:00
Louis Lam 4c1ac5e870
Merge pull request #2863 from mtelgkamp/ntfy-notification-improvements
Improve ntfy notifications
2023-04-09 16:08:12 +08:00
Louis Lam 9e320dc5fb Expose timezone and local datetime to notification providers 2023-04-09 16:01:27 +08:00
Louis Lam 2f3f929fbd
Merge pull request #2831 from mtelgkamp/mattermost-notification-improvements
Improve mattermost notifications
2023-04-09 15:42:28 +08:00
Miles Steele 682f8e52a8 lint 2023-04-06 15:30:38 -05:00
Miles Steele 171aff1226 add invert keyword feature 2023-04-06 15:25:25 -05:00
Josua Frank 1f7f1f70bf
Merge branch 'louislam:master' into ntfy-bearer-authorization 2023-04-06 10:55:28 +02:00
Louis Lam 21ad715e6a
Merge pull request #3021 from louislam/1.22.X
1.22.x -> master
2023-04-04 14:58:34 +08:00
Josua Frank 23af66f618
Merge branch 'louislam:master' into ntfy-bearer-authorization 2023-04-03 21:17:53 +02:00
Louis Lam 45ef7b2f69 Fix Effective Date Range cannot be removed 2023-04-03 21:01:58 +08:00
Nelson Chan 38fab198bb Fix: Fix user count check 2023-04-03 19:36:07 +08:00
Nelson Chan 8d5679a8ab Fix: Create database before connect 2023-04-03 19:35:31 +08:00
Josua Frank 6b078b83bd
Merge branch 'master' into ntfy-bearer-authorization 2023-04-03 08:33:05 +02:00
Louis Lam 1be74e2720
Merge pull request #2870 from chakflying/feat/auto-theme-status-page
Feat: Support auto theme in status pages
2023-04-03 02:38:30 +08:00
Louis Lam 32f84b5e4e
Merge pull request #2491 from RubenNL/fix-metrics-push
Fixed the metrics for the push type.
2023-04-02 02:05:03 +08:00
Louis Lam dbfaddafca Validate cron before submit 2023-04-01 16:30:55 +08:00
Louis Lam 511038b45a Remove unused code 2023-04-01 04:22:10 +08:00
Louis Lam 17ae47d091 Drop database backup logic, because duplicating a relative large database likely causes a disk space issue, users should take backup manually instead. 2023-04-01 00:58:23 +08:00
Louis Lam de0d1edfd4
Merge pull request #2988 from chakflying/fix/socks-rejectUnauthorized
Fix: Pass rejectUnauthorized to Socks Proxy
2023-04-01 00:48:28 +08:00
Louis Lam 524cf7c607 WIP 2023-03-31 21:34:05 +08:00
Louis Lam 227cec86a8 WIP 2023-03-31 20:25:37 +08:00
Louis Lam 02291730fe WIP 2023-03-31 04:04:17 +08:00
Nelson Chan 8ee4b844fd Fix: Pass rejectUnauthorized to Socks Proxy 2023-03-28 11:40:19 +08:00
Josua Frank fc4312ca1a
Merge branch 'master' into ntfy-bearer-authorization 2023-03-26 19:09:48 +02:00
Louis Lam fbdeb30ce7
Merge pull request #2973 from chakflying/fix/limit-precision
Fix: Apply toPrecision as last step
2023-03-26 15:46:00 +08:00
Louis Lam 41bda4e1d7
Merge pull request #2975 from chakflying/fix/badge-no-label
Fix: Allow status badge with empty label
2023-03-26 15:42:12 +08:00
Louis Lam 4869e6531c
Merge pull request #2980 from Genc/feature/twilio-notification-provider
Add Twilio Sms Notification Provider
2023-03-26 15:38:53 +08:00
Louis Lam 302b9cf644
Merge pull request #2956 from wwniclask25/feature/opsgenie-alerts
Feat: Add opsgenie notification provider
2023-03-26 15:36:50 +08:00
Louis Lam 3c3a192943
Merge pull request #2906 from chakflying/fix/duplicate-expiry-notif
Fix: Check for TLS expiry notified days smaller than target
2023-03-26 15:34:26 +08:00
Faruk Genç b64c835cee Add Twilio Sms Notification Provider 2023-03-25 19:56:01 +03:00
Nelson Chan 4f05912276 Fix: Allow status badge with empty label 2023-03-25 02:44:15 +08:00
Nelson Chan bf525371d9 Fix: Apply toPrecision as last step 2023-03-24 22:42:50 +08:00
Louis Lam 89bfc3bf33
Merge pull request #2908 from chakflying/chore/encrypted-private-key
Chore: Add support for encrypted SSL-key
2023-03-24 21:36:22 +08:00
Louis Lam f4ee5271af Improve error handling of mysqlQuery and return row count as result 2023-03-24 16:24:00 +08:00
Louis Lam 7330db3563 Improve error handling of mysqlQuery and return row count as result 2023-03-24 16:08:30 +08:00
Nelson Chan ca52047bf5 Feat: Flush WAL on shutdown 2023-03-22 14:46:58 +08:00
niclas.koegl d9558833fc
Fix linting 2023-03-21 19:45:44 +01:00
niclas.koegl d2527d7254
Merge branch 'master' into feature/opsgenie-alerts 2023-03-21 18:10:10 +01:00
niclas.koegl 6dfca0c163
Add Opsgenie notification provider 2023-03-21 18:07:19 +01:00
Josua Frank 35a56dd9e0 Added dropdown for authentication methods 2023-03-21 13:40:24 +01:00
Josua Frank 442f54de84
Merge branch 'louislam:master' into ntfy-bearer-authorization 2023-03-21 13:01:49 +01:00
tombii dbe73bd6ae
Update monitor.js (#2929)
Language
2023-03-15 15:00:28 +08:00
Louis Lam 491239415e Merge remote-tracking branch 'origin/master' into doubles-ss_master
# Conflicts:
#	server/database.js
2023-03-12 18:38:19 +08:00
Louis Lam 533bc1505b Prevent generating duplicated timeslots 2023-03-09 22:03:23 +08:00
Nelson Chan 391692a708 Chore: Add support for encrypted SSL-key 2023-03-09 00:00:07 +08:00
Louis Lam a599f5149b
Merge pull request #2907 from chakflying/fix/disconnect-redis
Fix: Disconnect redis after ping
2023-03-08 22:57:30 +08:00