Commit Graph

1733 Commits

Author SHA1 Message Date
Nelson Chan b8858f4605
Feat: Handle maintenance in `UptimeCalculator` (#4406)
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-03-27 10:19:25 +08:00
Christoph Fichtmüller 49b6dacb4d
Add gtxmessaging Notification Support (#4481)
Signed-off-by: Christoph Fichtmüller <cf@cfichtmueller.com>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-03-26 23:59:09 +01:00
Louis Lam e927327bad
Some minor changes for 2.0.0 (#4621) 2024-03-26 15:17:52 +08:00
Elliot Matson 5bc68fe0a7
Google chat cards (#3928)
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-03-20 12:58:28 +01:00
OptimusGREEN bc077cc536
add notification channel for home assistant (#4541)
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Seb <144435+rmtsrc@users.noreply.github.com>
2024-03-18 23:31:37 +01:00
Frank Elsinga 975761b448
made sure to use `Promise.allSettled` instead of sleeping for 500ms after login (#4592) 2024-03-19 00:16:04 +08:00
Frank Elsinga 0e3b3a9ab8
Made sure that more of the async usages are awaited (#4574) 2024-03-15 15:02:55 +01:00
Frank Elsinga a9a1cf1353
Chore: General notification reformatting (#3182)
- I unified where in file the name of `NotificationProvider.name` is placed
- I made sure that all the providers adhere to the signature of `NotificationProvider.send()`
- I made sure that all the providers use `okMsg` if returning success messages directly from the function.
  Here a discussion should be had:
  Should this be refactored into a constant of `NotificationProvider`? I could imagine that `NotificationProvider.SENDING_SUCCESSFULL`  could be a suitable alternative.
- I made sure all providers have the URL they `POST`/`GET` to be extraced into a variable.
  => refactored this way due to Nelsons suggestion
2024-03-14 14:21:15 +01:00
Frank Elsinga 1db750a2e1
Merge branch 'master' into hevans/add-heii-on-call-notification-provider 2024-03-11 20:49:42 +01:00
Frank Elsinga ca14c34977
Set `mqtt`-`clientId` to `uptime-kuma_..` instead of `mqttjs_..` (#4503) 2024-03-10 15:16:07 +01:00
Frank Elsinga 2a3a2201e6
make monitor start() and stop() async (#2830) 2024-03-09 23:36:00 +01:00
taschenuhr 9789931edf
Merge branch 'master' into feature/msteams-adaptivecards 2024-03-07 15:30:26 +01:00
taschenuhr 4aaa0b92fb fix test notification after method refactoring 2024-03-07 15:11:19 +01:00
Frank Elsinga e2239bc7b7
Merge branch 'master' into hevans/add-heii-on-call-notification-provider 2024-03-05 19:20:14 +01:00
Frank Elsinga da92400401
[Ntfy] Only include action link if monitor url is defined #3274 (#4411) 2024-03-05 19:19:18 +01:00
Andi Pätzold a0c62d8ab0
Fix: handle monitor names with slashes (#4472)
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-03-03 17:59:38 +08:00
taschenuhr 8bd69d78a8 some more tweaking of the card content and notification summary 2024-02-28 17:41:00 +01:00
taschenuhr cc09147b4b fix adding optional ActionSet 2024-02-28 16:31:47 +01:00
taschenuhr b8941403d1 code cleanup 2024-02-28 16:30:48 +01:00
taschenuhr 5b87da94b3 push notificationMessage to card header and add action button to dashboard 2024-02-28 14:19:32 +01:00
Nelson Chan c7b8bb9e4a
Fix: Incorrect handling of status page not found (#4537) 2024-02-28 18:57:58 +08:00
taschenuhr 7756070c57 refactor MS-Teams notification to use adaptive cards 2024-02-28 09:47:14 +01:00
Stefan Heine 6bfc58674a MQTT monitor, set the MQTT clientId to make it easier in the MQTT broker to identify where the connections are coming from 2024-02-19 07:57:34 +01:00
Stefan Heine 1b293f2754 MQTT monitor, set the MQTT clientId to make it easier in the MQTT broker to identify where the connections are coming from 2024-02-19 07:42:37 +01:00
Frank Elsinga 1fdb7e48ed
Formatting fixes 2024-02-14 23:45:23 +01:00
Frank Elsinga cc000117ca
Updated the code to look more like the other notification providers 2024-02-14 23:41:35 +01:00
Humberto Evans 5a9c3ad353 move try/catch into main control flow and more from code review comments 2024-02-13 17:27:59 -08:00
Humberto Evans 4cdc8f344b
Apply suggestions from code review
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-02-13 16:54:52 -08:00
Humberto Evans f254940b64 spell things correctly 2024-02-12 18:01:06 -08:00
Humberto Evans 71dd5e2369 do not assume missing heartbeat is a test 2024-02-12 17:54:36 -08:00
Humberto Evans 246316f55b Undo my overzelous linter 2024-02-12 17:24:42 -08:00
Humberto Evans 80bdc455da lint 2024-02-12 16:31:58 -08:00
Humberto Evans e8fada9386 set url to heii on call prod 2024-02-12 16:14:41 -08:00
Humberto Evans 93ac212aef Add Heii On-Call 2024-02-12 15:58:54 -08:00
Frank Elsinga 81e465f418
Removed debug statement 2024-02-11 20:02:09 +01:00
Neel Bhanushali a5d0f7a7db console added with double quotes and semicolons. console added with username so i can remove later 2024-02-11 21:42:20 +05:30
Neel Bhanushali a16b42f98c poc done 2024-02-11 21:33:58 +05:30
Frank Elsinga dc3abc68f0
Fixed type anotation 2024-01-30 17:54:04 +01:00
Frank Elsinga 89158be7de
Merge branch 'master' into monitor_async_start_stop 2024-01-30 17:53:21 +01:00
Nelson Chan 2b8f55194f
Fix: [JSON-Query] Prevent parsing string-only JSON (#4425) 2024-01-28 03:18:24 +08:00
Nelson Chan cf075a8793
Fix: missing await in `getRemoteBrowser()` (#4418) 2024-01-26 06:53:15 +08:00
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