Commit graph

1692 commits

Author SHA1 Message Date
Nelson Chan 288cab6dd7
Fix: Make sure browser is connected before returning (#4417) 2024-01-25 07:59:42 +08:00
Philip Klostermann 95125cc417 [Ntfy] don't include url action with defaut URL value 2024-01-23 11:16:10 -05:00
Philip Klostermann 20b69acde2 [Ntfy] Only include action link if monitor url is defined #3274 2024-01-23 10:10:31 -05:00
AnnAngela b4e45c7ce8
fix(notification-dingding): throw error when failed (#3598) 2024-01-20 03:29:13 +08:00
Adam Stachowicz 458cdf9f9b
Fix encodeBase64 for empty password or user in HTTP Basic Authentication (#4326) 2024-01-07 02:06:06 +08:00
Louis Lam 9356e7dd4f
Update clear stats (#4324) 2024-01-05 20:51:05 +08:00
Ben Scobie 25cb78796a
Fix incorrect ping log (#4322) 2024-01-05 20:43:03 +08:00
Nelson Chan bf1e3a3d5e
Feat: Add stat_hourly & min. max. ping (#4267)
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-01-05 20:42:24 +08:00
Louis Lam 2a315d4c84 Merge branch '1.23.X' into merge
# Conflicts:
#	package-lock.json
#	package.json
2024-01-03 02:10:01 +08:00
Nelson Chan c9fe6b5d01
Feat: Refresh login token for the client initiating password change (#4214) 2023-12-18 19:52:49 +08:00
Louis Lam 996ff28ed9
Playwright + Native Node Test Runner (#3893) 2023-12-17 19:02:22 +08:00
HdroguettA f24c3583fb
Attempt an OAuth2 Refresh on 401 (#3903) 2023-12-17 17:21:07 +08:00
Louis Lam 8151ac0e25
Fix Async child process output issue (#4231) 2023-12-14 04:54:34 +08:00
Louis Lam 1a47563eb8 Merge branch '1.23.X' into version-merge
# Conflicts:
#	package-lock.json
#	package.json
#	server/server.js
#	server/uptime-kuma-server.js
2023-12-13 01:54:08 +08:00
Nelson Chan 4185ec20b0
Fix: Origin undefined on error handling (#4224) 2023-12-13 01:35:39 +08:00
Louis Lam f861a48dfc
Smoothing the update for origin check (#4216) 2023-12-12 16:23:41 +08:00
Louis Lam fa1214ae5e
Rebse #4213 (#4215)
Co-authored-by: Nelson Chan <chakflying@hotmail.com>
2023-12-11 19:30:01 +08:00
Nelson Chan 99adac3eb9
Fix: typo for disconnectAllSocketClients (#4213) 2023-12-11 19:26:20 +08:00
Nelson Chan 89beb5f264
Fix: Handle trailing slash for status page routing (#4185)
* Fix: Handle trailing slash

* Chore: Add desc for default slug

* Chore: Use margin instead of space

* Minor
2023-12-11 03:05:13 +08:00
Louis Lam 719ef856e8 Merge manually 2023-12-11 02:36:08 +08:00
Louis Lam 869ee8ec50 Merge branch '1.23.X' into 1.23.X-merge-to-2.X.X
# Conflicts:
#	.github/workflows/auto-test.yml
#	extra/reset-password.js
#	package-lock.json
#	package.json
#	server/routers/status-page-router.js
#	server/server.js
#	server/socket-handlers/general-socket-handler.js
#	server/uptime-kuma-server.js
#	src/components/ActionInput.vue
#	src/util.js
#	src/util.ts
2023-12-11 02:13:47 +08:00
Louis Lam 530c8e5328
Drop cacheable-lookup (#4178)
* WIP

* WIP
2023-12-11 02:01:56 +08:00
Louis Lam 482049c72b
Merge pull request from GHSA-88j4-pcx8-q4q3
* WIP, still need to handle npm run reset-password

* Implement it for "npm run reset-password"

Bug fixes and change along with this commit
- Move `ssl`, `hostname`, `port` to ./server/config.js, so `reset-password` is able to read it
- Fix: FBSD is missing, no idea who dropped it.
- Fix: Frontend code should not require any backend code (./server/config.js), moved "badgeConstants" to the common util (./src/util.ts) and drop vite-common.js

* Minor
2023-12-10 20:40:40 +08:00
Louis Lam 2815cc73cf
Merge pull request from GHSA-mj22-23ff-2hrr
* WIP

* WIP

* Handle parsing error

* Fix matching origin issue
2023-12-10 20:39:43 +08:00
Louis Lam ad4629cb03
Fix UPTIME_KUMA_DB_NAME issue (#4169) 2023-12-05 05:16:55 +08:00
DevMirza db7a92a74c
🐛 fix(remote-browser): Remove unused test() function (#4155)
* fix

* fix lint

* Update Notifications.vue

* Update ActionInput.vue
2023-12-03 20:27:09 +08:00
Nelson Chan 46432618e1
Feat: Add json-query to MQTT monitor type (#3857)
* Feat: Add json-query MQTT monitor type

* Fix: Allow result to be null

* Fix: Remove unused parameter

* Chore: Update JSDoc

* Fix: Add default if checkType is not set

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-12-03 01:36:19 +08:00
Nelson Chan 35479c7690
Fix: Disable timezone conversion for mariadb (#3756) 2023-12-03 01:34:26 +08:00
Louis Lam c5d9c54a04 Merge branch 'master' into 1.23.X-merge-to-2.X.X-2
# Conflicts:
#	package.json
2023-12-02 18:43:06 +08:00
Louis Lam 81c9900e23 Merge branch '1.23.X' into 1.23.X-merge-to-2.X.X-2
# Conflicts:
#	docker/debian-base.dockerfile
2023-12-01 15:50:35 +08:00
Adam Hancock 62780001f7
Feature: remote browser support (#3904)
* [empty commit] pull request for remote browser support

* Remote browser: Added UI screens and DB tables.

* Remote browser working

* Fixing tests

* Fix tests

* Fix tests

* fix tests

* Test browser

* revert init_db.js

* Changed drop down to ActionSelect

* Fix translations

* added remote browsers toggle

* revert changes package-lock

* Fix bad english

* Set default remote browser

* Remote browsers Requested changes

* fixed description.
2023-12-01 15:29:10 +08:00
Louis Lam 9fb95fe95e
Add support for /snap/bin/chromium (#4141) 2023-12-01 14:25:41 +08:00
Louis Lam 1708b67949
Change execSync/spawnSync to async (#4123)
* WIP

* Add missing await

* Update package-lock.json
2023-11-30 16:12:04 +08:00
Nenad Gal 01855e0ffe
monitor path as a notification title mattermost (#3801) 2023-11-30 15:58:01 +08:00
dakriy 80efe9b831
Handle cookies on redirection (#3589)
* feat: Set and send cookies on redirection (louislam#3587).

* feat: Make proxy agents handle cookies

* Merge package-lock.json

* Merge package-lock.json

* Fix lint

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-11-29 17:25:33 +08:00
Nelson Chan b8bd17ddbd
Fix: Add timeout to testDockerHost (#4097) 2023-11-26 18:47:56 +08:00
Louis Lam 5bc8c0c66f
Merge 1.23.7 (#4102)
1.23.x merge to 2.x.x
2023-11-25 03:32:12 +08:00
Louis Lam 60be875edd Fix a merge issue 2023-11-25 03:28:45 +08:00
Louis Lam e9bf02fc2c Merge branch '1.23.X' into 1.23.X-merge-to-2.X.X-2
# Conflicts:
#	package-lock.json
#	package.json
#	server/model/monitor.js
#	server/monitor-types/tailscale-ping.js
#	server/socket-handlers/general-socket-handler.js
#	server/uptime-kuma-server.js
2023-11-25 03:25:03 +08:00
Nelson Chan 67250d6302
Feat: Retries persistence (#3814)
* Feat: Retries persistence

* Fix: Set duration for first beat of push monitor

* Feat: Update UptimeCalculator in push route

* Fix: Handle resend in push route

* Chore: Remove debug log
2023-11-24 18:11:36 +08:00
Louis Lam 711380bbbe
Merge pull request #4095 from louislam/update-3
Rewrite Tailscale ping using spawnSync
2023-11-24 17:44:24 +08:00
Louis Lam 9536c6aa6a Minor 2023-11-24 17:33:13 +08:00
Louis Lam 4255496b11 Rewrite Tailscale ping using spawnSync 2023-11-24 17:29:42 +08:00
Louis Lam f28dccf4e1
Merge pull request from GHSA-v4v2-8h88-65qj 2023-11-24 17:18:01 +08:00
Louis Lam b689733d59 Fix getGameList, testChrome without checkLogin 2023-11-24 16:37:52 +08:00
Louis Lam 121d1a11af
Revert "Restart running monitors if no heartbeat (#3952)" (#4088)
This reverts commit c43223a16d.
2023-11-24 02:23:38 +08:00
Louis Lam 8e61158758
Close the client postgresql connection after rejection. (#4084)
Co-authored-by: Manuel Vázquez Acosta <manuel@merchise.org>
2023-11-22 19:50:03 +08:00
Louis Lam bf58838b89
+10 seconds for Abort signal (#4053)
* Debug only

* Remove debug
2023-11-22 16:03:03 +08:00
Nelson Chan 33ce0ef02c
Fix: Improve error message on timeout (#4054)
* Fix: Improve error message on timeout

* Chore: Format
2023-11-21 23:56:17 +08:00
Louis Lam 92e0eec6d4 Merge branch '1.23.X' into 1.23.X-merge-to-2.X.X
# Conflicts:
#	package.json
#	server/model/monitor.js
2023-11-20 14:49:45 +08:00
Louis Lam 954e05b72f Fix #4051 2023-11-18 11:33:34 +08:00
Louis Lam 2aa15ea635 Merge branch '1.23.X' into 1.23.X-merge-to-2.X.X
# Conflicts:
#	server/database.js
2023-11-18 01:37:30 +08:00
Louis Lam f0975cd929
Should be a final ulitmate fix for request timeout issue (#4045)
* Try to fix timeout again

* Ops
2023-11-18 01:17:54 +08:00
Louis Lam b383392e8f
Remains Node.js 16' SSL behavior for 1.23.X (#4044) 2023-11-17 15:21:08 +08:00
Nelson Chan 9964b6c4d8
Fix: Update monitor object on pause (#4032) 2023-11-16 20:41:35 +08:00
Louis Lam 188fdcb6ad Merge branch 'master' into 1.23.X-merge-to-2.X.X
# Conflicts:
#	server/model/monitor.js
#	server/util-server.js
2023-11-13 21:25:49 +08:00
Louis Lam 65cbc7b318 Migrate kafka_producer patch 2023-11-13 21:19:43 +08:00
Louis Lam ace1fe00c2 Merge branch 'master' into 1.23.X-merge-to-2.X.X
# Conflicts:
#	docker/debian-base.dockerfile
#	package-lock.json
#	server/database.js
#	server/model/monitor.js
#	server/uptime-kuma-server.js
#	server/util-server.js
2023-11-13 21:15:51 +08:00
Louis Lam 8e3ff25f7b
Followup #3864, rebase for 1.23.x (#4016)
* Fix: Use ActionSelect Docker Host & validate input

* Fix: Handle docker host deleted while editing

* UI: Use add for ActionSelect & prevent delete instead

---------

Co-authored-by: Nelson Chan <chakflying@hotmail.com>
2023-11-12 20:32:40 +08:00
Louis Lam 6e80c850f4
Should be an ulitmate fix for request timeout issue (#4011) 2023-11-12 13:50:51 +08:00
Nelson Chan 38efd97b28
Fix: Support float ping in push route (#3987) 2023-11-09 23:39:44 +08:00
Nelson Chan b534fde265
Fix: Use ActionSelect for Docker Host & validate input (#3864)
* Fix: Use ActionSelect Docker Host & validate input

* Fix: Handle docker host deleted while editing

* UI: Use add for ActionSelect & prevent delete instead
2023-11-03 21:25:28 +08:00
Louis Lam ce0ba6c0ca
Fix/axios abort signal for 1.23.X (#3971)
* Fix: Add axios abort signal

* Chore: Fix comment

---------

Co-authored-by: Nelson Chan <chakflying@hotmail.com>
2023-11-01 10:10:48 +08:00
Nelson Chan fdfb572e09
Fix: Add axios abort signal (#3961)
* Fix: Add axios abort signal

* Chore: Fix comment
2023-11-01 09:48:13 +08:00
Louis Lam c43223a16d
Restart running monitors if no heartbeat (#3952) 2023-11-01 09:36:12 +08:00
Muhammed Hussein karimi 9f170a68d7
🐛 fix: boolean fields in kafka producer monitor (#3949)
* 🐛 fix: boolean fields in kafka producer monitor

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

* 🐛 fix: boolean fields db patch table modify

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

* ✏️  typo: remove `_old` COLUMNs in patch-fix-kafka-producer-booleans

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

---------

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>
2023-10-28 14:42:55 +08:00
Chongyi Zheng ddd135efa8
Confirm chrome path in macOS is correct (#3950) 2023-10-28 08:15:49 +08:00
Nelson Chan 9379498b49
Chore: Allow MS Edge for real-browser monitor (#3941) 2023-10-27 18:46:13 +08:00
Louis Lam 1a862e47ab Check if the password changed when user is not null 2023-10-23 06:21:39 +08:00
Louis Lam 87b2e45fbf Check if the password changed when user is not null 2023-10-22 00:51:03 +08:00
atmaniak 9b599ccd1d
Add Grafana Oncall notification provider (#2783)
* Add Grafana Oncall notification provider

* Fix linter errors

* Remove useless variables

* Remove test message

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

* spelling consistency

* Update server/notification-providers/grafana-oncall.js

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

* Update server/notification-providers/grafana-oncall.js

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

* eslint requirements

Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Add Grafana Oncall translation

* Update src/components/notifications/GrafanaOncall.vue

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

* Check empty url

---------

Co-authored-by: Emmanuel Cohen <emmanuel.cohen@bso.co>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-10-19 19:32:42 +08:00
Louis Lam 8412e19fe6 Add a comment 2023-10-19 09:41:30 +08:00
Louis Lam bbaba29222 Set default ua for axios: Uptime-Kuma/version instead of axios/version 2023-10-18 21:54:49 +08:00
Louis Lam e11aad2d60 Add some comments 2023-10-18 21:54:48 +08:00
Frank Elsinga 3fcb7bf181
Feature: SMTP-templating of customBody and customHeader via liquidjs (#3414)
* replaced the regex replacement engine with `Liquid`

* added custom bodys

* fixed a typo

* formatting fixes

* switched all template-variables to be camelCase
2023-10-16 22:16:49 +08:00
Nelson Chan e64bf0e3fe
Fix: Stop notification check on root certs (#3874)
* Fix: Stop notification check on root certs

* Chore: Use Set for optimization

* Fix: Manually calculate SHA256 to support node v14
2023-10-16 02:20:38 +08:00
Louis Lam 18169c59a1
[MySQL monitor] Split password into a standalone field (#3899) 2023-10-16 00:38:56 +08:00
Louis Lam 966dfa6f88
Drop backup (#3892)
* Drop backup

* Fix warning
2023-10-14 23:38:31 +08:00
Louis Lam a362206fab Fix: do not colorize non-string log message 2023-10-14 17:48:41 +08:00
Louis Lam 03e43ab364
Log color and simplify startup log for production (#3889) 2023-10-14 03:00:34 +08:00
Louis Lam 1c13a75970
Fix #3868 postgres monitor could possibly crash Uptime Kuma (#3880)
* Bump pg

* Handle uncaughtException

* Fix parsing issue of postgres connection and fix the query example
2023-10-13 02:50:10 +08:00
Louis Lam aa676150eb Fix shutdown issue and tidy up 2023-10-12 21:26:11 +08:00
DevMirza 67d0ef571d
🐛 fix: lint warnings & errors (#3862)
* fix: lint warnings & errors

* fix: lint warning

* fix: lint warnings

* Update user.js

* Update util-server.js

* Update server/util-server.js

Co-authored-by: Nelson Chan <3271800+chakflying@users.noreply.github.com>

* Update server/model/user.js

Co-authored-by: Nelson Chan <3271800+chakflying@users.noreply.github.com>

---------

Co-authored-by: Nelson Chan <3271800+chakflying@users.noreply.github.com>
2023-10-10 00:39:55 +08:00
Louis Lam c39043ec32 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	package-lock.json
2023-10-09 21:36:04 +08:00
Louis Lam 852b3fa61b Merge branch '1.23.X'
# Conflicts:
#	package-lock.json
#	server/database.js
#	server/server.js
#	server/util-server.js
2023-10-09 21:28:01 +08:00
Louis Lam 88afab6571
Merge pull request from GHSA-g9v2-wqcj-j99g
* Fix attempt

* Update message
2023-10-09 07:01:54 +08:00
前端小武 1b148786a5
Fix: Update x-forwarded-host field when using reverse proxy (#3726) 2023-10-09 06:31:52 +08:00
Nelson Chan 5b7206f8e2
Fix: Wrong datatype for avgPing (#3724) 2023-10-09 02:33:32 +08:00
Adam Stachowicz 6875ecdfbf
Fix warnings (#3826) 2023-10-03 05:39:17 +08:00
Nelson Chan 2267655e99
Chore: Add remaining server translation keys (#3684) 2023-09-27 04:53:14 +08:00
Louis Lam 98b93c887a
Show push example under the detail page (#3739) 2023-09-25 17:49:00 +08:00
Frank Elsinga 0fe8d04f78
made the way telegram handles axios errors like all the other notification providers (#3623) 2023-09-24 03:40:11 +08:00
Muhammed Hussein karimi 2ab21ccf8a
🐛 fix: kafka producer bugs (#3771)
* 🐛 fix: missing Kafka Producer SSL option in frontend object

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

* ♻️  refactor: better error handling of kafka producer

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

---------

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>
2023-09-24 03:30:15 +08:00
Marvin A. Ruder 90d0e8ccde
Enable status page certificate expiry badge for all HTTP(s) monitors (#3649) 2023-09-24 03:18:18 +08:00
Nelson Chan 7c49f7e5a6
Feat: Full server-side pagination for important events (#3515)
* Feat: Serverside pagination for importantBeats

* Chore: Remove unused state

* Apply suggestions from code review

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

* Fix: Add watch for monitor

* Fix: Fix compatibility with dynamic page length

* Chore: Fix lint

* Merge conflict

---------

Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-09-23 19:03:45 +08:00
Chongyi Zheng 499429858c
Use API v2 for Bark notification (#2759)
* Use API v2 for Bark notification

* API v2 endpoint should end with path `/push`

* Support both v1 and v2

* Flip the bool

* Allow selecting api version

* Apply review suggestion

Co-authored-by: Nelson Chan <3271800+chakflying@users.noreply.github.com>

* Add translated string to `en.json`

* Apply review suggestion

Co-authored-by: Nelson Chan <3271800+chakflying@users.noreply.github.com>

---------

Co-authored-by: Nelson Chan <3271800+chakflying@users.noreply.github.com>
2023-09-21 21:08:04 +08:00
Louis Lam 16a396debb Similar to #3763, but for 1.23.3 2023-09-21 20:38:54 +08:00
Louis Lam 2ef759a362 Allow missing patch files for downgrade or testing pr. 2023-09-21 20:12:10 +08:00
Nelson Chan 33cc96f918
Fix: subtract time taken to run heartbeat (#3072) 2023-09-21 20:11:04 +08:00
Louis Lam 59119b9e71 Merge branch '1.23.X'
# Conflicts:
#	package-lock.json
2023-09-18 03:26:59 +08:00
Louis Lam ff51704cdf Fix #3712 2023-09-17 02:40:08 +08:00
Henrik Gerdes 33804d8823
fix: respect the user defined oauth2 auth method (#3727) 2023-09-16 05:13:20 +08:00
Louis Lam 83d91dbb1b Set mariadb timezone to UTC using +00:00 (#3723) 2023-09-10 18:33:09 +08:00
Nelson Chan 0af4ee6c34
Fix: Missing await for isActive (#3717) 2023-09-10 01:54:03 +08:00
Frank Elsinga d6af9162c1
Chore: Extracted the dns monitor to its own monitor-type (#3413)
* extracted the dns monitor to its own monitor-type

* linting fixes

* another formatting fix

* Fix: Improve dnsMessage handling (#3614)

* fixed docs

* fixed formatting changes
2023-09-09 18:14:55 +08:00
Anders Kvist f0c54be43f
Adding x-www-form-urlencoded (#3499)
* Adding x-www-form-urlencoded

* Adding example of x-www-form-urlencoding to body.

* A bit cleaner.

* Update server/model/monitor.js

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

* Update src/pages/EditMonitor.vue

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

* Update src/pages/EditMonitor.vue

Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Add simple test

---------

Co-authored-by: Anders Kvist <ak@cego.dk>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>
2023-09-09 18:05:25 +08:00
Frank Elsinga d6302198f3
chore(jsdoc):Linting fixes (#3703)
* fixed the lockfile having a different version

* jsdoc
2023-09-07 15:42:44 +08:00
Nelson Chan f3e1a9c61a
Fix: Incorrect database check in sqlHourOffset (#3706) 2023-09-07 14:00:49 +08:00
Louis Lam 9c61247162 Fix #3679 2023-09-04 21:32:48 +08:00
Louis Lam ed04008569 Remove incorrect warning 2023-09-02 17:20:36 +08:00
Louis Lam f3517bc08d Fix avg ping 2023-09-02 17:11:22 +08:00
Nelson Chan 52946c3e08
Feat: Translate toast messages by adding msgi18n to callbacks (#3263)
* WIP: Add msgTranslated to callbacks

* Chore: Unify Saved period

* Feat: add support for interpolation
2023-09-01 20:51:28 +08:00
Louis Lam 5061e42d4b Merge remote-tracking branch 'origin/2.0.X' into 2.0.X 2023-09-01 05:23:52 +08:00
Louis Lam 076331bf00
Uptime calculation improvement and 1-year uptime (#2750) 2023-09-01 05:19:21 +08:00
Louis Lam a13fc7079e Merge branch 'master' into 2.0.X
# Conflicts:
#	package-lock.json
2023-08-30 01:39:16 +08:00
Louis Lam cd79df07e1
Add an ability to enable/disable nscd (#3652) 2023-08-28 16:15:48 +08:00
Nelson Chan db42c13e05
Fix: Remove legacy unused tags cleanup (#3651) 2023-08-27 18:56:50 +08:00
Lior Slakman c0e273df5b
Show hostname:port for gamedig monitor on Discord notification (#3643) 2023-08-27 02:24:33 +08:00
Nelson Chan 4da1341aa5
Fix: Improve dnsMessage handling (#3614) 2023-08-26 21:27:32 +08:00
Frank Elsinga 4d07b65bdd
fixed local docker not working anymore (#3606) 2023-08-20 04:45:58 +08:00
Frank Elsinga 1772158d62
fixed opsgenieRegion not being the same enum between the frontend and backend (#3616) 2023-08-20 04:41:42 +08:00
Louis Lam 31c00081fa Merge branch 'master' into 2.0.X 2023-08-16 16:14:04 +08:00
zhenqiang c0174dc1c4
fix(notification-aliyun-sms): throw error when sending SMS failed (#3573) 2023-08-15 04:14:28 +08:00
Louis Lam db3a7d69fe Change some jsdoc rule to warn instead of error 2023-08-11 22:29:45 +08:00
Matthew Nickson 8a92054c2b
Added JSDoc to ESLint (#3529)
* Added JSDoc to eslint rules

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Fixed JSDoc eslint errors

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Update the check-linters workflow to Node.js 20

---------

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-08-11 15:46:41 +08:00
Louis Lam da4f4e3d76 Update migrations 2023-08-09 21:07:23 +08:00
Louis Lam e001fd7d1c incrementalVacuum for sqlite only 2023-08-09 21:05:15 +08:00
Louis Lam 3e0f5f4231 Merge branch 'master' into 2.0.X
# Conflicts:
#	package-lock.json
#	server/database.js
#	server/util-server.js
2023-08-09 20:09:56 +08:00
Louis Lam b44f6e4af2 Fix #3539 2023-08-08 18:29:48 +08:00
Matthew Nickson 71fca3f0c3
Fixed #3520 Validate accepted status codes type (#3530)
* Fixed #3520 Validate accepted status codes type

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Avoid crash on invalid status code

Instead of failing on an invalid status code, log the error and skip to
next.

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

---------

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2023-08-08 03:22:32 +08:00
Nelson Chan 2921f33c24
Feat: add givenPortOnly as gamedig option (#3532) 2023-08-08 03:14:21 +08:00
Louis Lam 4e0bb394db Minor 2023-08-08 03:10:21 +08:00
Jinhyeok Lee 439b6517d1
Feat: Add http/http keyword timeout option (#2142)
* feat: Add timeoutMs field

* chore: Update Languages (incl. ko-KR)

* Revert "chore: Update Languages (incl. ko-KR)"

This reverts commit 349331a00b.

* chore: Update ko-KR selectively

* chore: Update en selectively

* Merge manually

* Reorder and show only if http related monitors

* fix: Update Korean translation

* fix: Rename timeoutMs to timeout, rename label, make DOUBLE

* fix: Change minimum step to 0.1, matching DOUBLE type

* Put the sql patch at the end

* Update EditMonitor.vue

* Colocate timeout with retry, fix clampTimeout logic, show default on 0

* Update src/pages/EditMonitor.vue to remove a comment

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

* Fix merge issue

* Update the timeout value while finished editing the interval value

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-08-07 00:14:56 +08:00
Louis Lam c6e68fac97
Follow up #2852 (#3527) 2023-08-04 23:08:44 +08:00
Marcell Fülöp bce4835362
FEAT: Allow client side TLS for Docker hosts (#2852)
* FEAT: Allow client side TLS for Docker hosts

Inlcude TLS certificate in HTTPS requests when certificate
files are locally available to Kuma for a host.

* fix: refactor to satisfy linter requirements

* fix: linter
2023-08-04 22:49:33 +08:00
Nelson Chan a032e11a2e
Feat: Create Group in EditMonitor page (#3379)
* Feat: Create Group in EditMonitor page

* Fix: Start group mon. after child is added

* Chore: Swap confirm & cancel for ergonomics

* Fix rarely issue that group monitor can throw an error if lastBeat is null

* Resume the group monitor in the callback

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-08-04 14:48:21 +08:00
Louis Lam d231a05526
Remove babel-plugin-rewire (#3522) 2023-08-04 01:10:15 +08:00
Louis Lam 67b1974718 Allow specifying DATA_DIR without a tailing slash 2023-08-03 20:54:11 +08:00
Henrik Gerdes 42b5d30a33
feat: Implement oauth2 monitors (#3119)
* [empty commit] pull request for implement oauth2 monitor

* feat: implement oauth2 client credentials flow

* fix: auth methods clarification & error handling

* docs: fix JSdocs types and clarifications
2023-08-02 15:40:19 +08:00
Damon 587d9e4781
Add Flashduty notification (#3475)
* feat: add FlashDuty notification channel

* refactor: #3475 nofify with Up or Down;
refactor code;
add en zh-hk zh-tw lang

* refactor: default select Info

* refactor: add space in word

* refactor the flashduty notification code

* refactor:compatible when Test flashduty nofication

* refactor: add function param description

* refactor: revert zh-hk zh-tw changes of flashduty
2023-08-01 02:13:04 +08:00
Louis Lam 9dd652733e
Merge pull request #3467 from ngc7331/pushdeer
[reopened] feat: allow the user to configure PushDeer Server URL
2023-07-31 17:57:21 +08:00
Louis Lam 0a59fef7d8
Merge pull request #3490 from chakflying/fix/radius-retry
Fix: Incorrect radius error & retry handling
2023-07-31 17:47:26 +08:00
Louis Lam 7f68e4a987 Merge remote-tracking branch 'origin/master' into status-page-expiry
# Conflicts:
#	src/lang/en.json
2023-07-31 17:30:49 +08:00
zappityzap eb6167aaf1
Nostr dm notifications (#3473)
* 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

* better websocket polyfill, update deprecated function

* add conditional polyfills for node versions

* lint

* use correct npm for package-lock

---------

Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-07-31 17:24:45 +08:00
Louis Lam a0bd4b248b Merge remote-tracking branch 'origin/master' into 2.0.X
# Conflicts:
#	docker/debian-base.dockerfile
#	package-lock.json
#	package.json
#	server/database.js
#	src/router.js
2023-07-30 19:15:09 +08:00
Nelson Chan 573f158f7f Fix: incorrect radius error handling 2023-07-27 17:42:22 +08:00
Louis Lam a0203372ce
Built-in nscd into the docker image (a better dns caching service) (#3472) 2023-07-24 17:04:50 +08:00
Raymond Hackley 5ccf2d23fc
Fix: SMTP notification "Ignore TLS Error" option (#2999) (#3465) 2023-07-23 14:45:05 +08:00
小造xu_zh bf68e0a7bc fix: define pushdeerlink 2023-07-21 14:11:13 +00:00
小造xu_zh 6984596568
Apply suggestions from code review
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-07-21 22:01:20 +08:00
小造xu_zh 0684313ec9 feat: remove blank characters and ending '/' first 2023-07-20 09:33:27 +00:00
小造xu_zh d7e12dc92d feat: allow the user to configure PushDeer Server URL 2023-07-20 09:24:16 +00:00
SGprooo 1d9a28e9ab
feat: Tailscale ping monitor (#3178)
* Add boilerplate for tailscale ping

* tailscale initial commit draft

* Refactor TailscalePing & better error handling

Split check function into two methods and added async/await syntax for readability/modularity
Switched to promise-based error handling (takes into account different types of error such as "Execution error", "Error in output", "no matching peer", and "is local Tailscale IP") and throws them as JavaScript errors.

* Minor update

* minor update (again)

* Update server/monitor-types/tailscale-ping.js

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

* Update server/monitor-types/tailscale-ping.js

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

* Update server/monitor-types/tailscale-ping.js

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

* Update server/monitor-types/tailscale-ping.js

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

* timeout revision

* JSDoc

* Removed long explainers

* eslint tailscale-ping.js --fix

* reran eslint

* Fix: Use hostname rather than url

* Fixed NaN on monitor interval

now interval value is correctly passed to runTailscalePing

* Add warning message

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-07-19 20:58:21 +08:00
Tarun Singh 50d4091ded Merge branch 'master' of https://github.com/louislam/uptime-kuma into status-page-expiry 2023-07-18 22:57:48 -04:00
Muhammed Hussein karimi 278b88a9d9
feat: added kafka producer (#3268)
*  feat: added kafka producer

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

* 🐛 fix: eslint warn

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

* 🐛 fix: typings and auth problems

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

* 🐛 fix: better variable name to trrack disconnection

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

* 🐛 fix: grouping Kafka Producer special settings into one template

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

*  feat: add kafka producer translations into `en.json`

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

* 🐛 fix: disable close-on-select on kafka broker picker

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

* 🐛 fix: `en.json` invalid json (conflict resolve)

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

* 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

* Minor

* Fix a bug of clone

---------

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-07-17 16:15:44 +08:00
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