Commit graph

511 commits

Author SHA1 Message Date
Louis Lam d8a676abb6 Implement recurring day of month and day of week 2022-10-15 18:49:09 +08:00
Louis Lam 268cbdbf8d Merge remote-tracking branch 'origin/master' into maintenance
# Conflicts:
#	server/server.js
#	src/components/settings/General.vue
2022-10-15 15:57:39 +08:00
Matthew Nickson f459ea845c
Added #2182 Add support for custom radius ports (#2197)
This commit adds support for the port to be specified when using the
radius monitor type. A check has been implemented to ensure that a null
value is not passed to the radius check function as could occur with
monitors that were created before this change was introduced. The
default port of 1812 is displayed when the user selects the radius
monitor in much the same way as the DNS port is handled. The port was
not included in the hostname in the form hostname:port in order to avoid
issues with IPv6 addresses and monitors that had been created before
this change was implemented.

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

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-10-13 00:32:05 +08:00
Louis Lam edacff123b Add UTC in the serverTimezone dropdown 2022-10-12 22:13:07 +08:00
Louis Lam 2faf866e9e Implement generateTimeslot() for recurring interval type 2022-10-12 17:02:16 +08:00
Louis Lam 39b6725163 Update maintenance tables 2022-10-11 21:48:43 +08:00
Louis Lam dfb75c8afb Update status page's maintenance message 2022-10-11 20:56:48 +08:00
Louis Lam e07aa982c3 WIP 2022-10-11 18:23:17 +08:00
Louis Lam c84de4d259 WIP: Add maintenance status 2022-10-11 01:45:30 +08:00
Louis Lam c1ccaa7a9f WIP 2022-10-10 20:48:11 +08:00
Louis Lam 539683f8e9 Merge remote-tracking branch 'origin/master' into maintenance 2022-10-10 16:50:25 +08:00
Louis Lam 71af23cf00 Fix #2207 2022-10-10 02:47:24 +08:00
Louis Lam a577fba848 Change DateTime Range using serverTimezone 2022-10-10 02:28:03 +08:00
Louis Lam b007681e67 Merge remote-tracking branch 'origin/master' into karelkryda_master
# Conflicts:
#	server/model/monitor.js
#	server/model/status_page.js
#	src/languages/en.js
2022-10-09 19:26:00 +08:00
Louis Lam 6e07ed2081 Fix #2186 2022-10-07 15:02:19 +08:00
Louis Lam 0686757160 [Docker Monitor] Change tcp:// to http:// 2022-10-04 16:19:56 +08:00
Matthew Nickson f9be918246
Add support for MySQL/MariaDB databases #1817
This commit adds support for monitoring MySQL and MariaDB database
servers. The mysql2 package was choosen over mysql as it provides a
promise wrapper and is reportedly faster than the original mysql package
whilst still maintaining the same API.

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-10-02 01:52:53 +01:00
Louis Lam 204339fbed Make two functions to convert ISO 8601 <=> YYYY-MM-DD hh:mm:ss 2022-09-28 00:48:15 +08:00
Louis Lam b1465c0282 - Maintenance standardize datetime format to YYYY-MM-DD hh:mm:ss
- Import dayjs extensions one time only
- Maintenance activeCondition centralize
2022-09-28 00:20:17 +08:00
Louis Lam 4002b9f577 [WIP] Checking maintenance time using maintenance_timeslot table 2022-09-27 20:44:44 +08:00
Justin Tisdale 6537f4fe74 content-type change 2022-09-26 17:09:10 -04:00
Justin Tisdale 5809088f27 Don't override a user-defined content-type header 2022-09-26 15:52:43 -04:00
Louis Lam 3f63cb246b [WIP] Handle timezone offset for timeRange 2022-09-25 19:38:28 +08:00
Louis Lam f11dfc8f43 [WIP] Add/Edit Maintenance with new UI and recurring 2022-09-24 19:18:24 +08:00
Louis Lam 9d99c39f30 Update Maintenance UI for recurring 2022-09-24 02:33:29 +08:00
Louis Lam 2f67d26702 Merge manually, as this part had been moved 2022-09-17 16:20:10 +08:00
Louis Lam 90761cf831 Merge remote-tracking branch 'origin/master' into karelkryda_master
# Conflicts:
#	server/database.js
#	server/model/monitor.js
#	server/routers/api-router.js
#	server/server.js
#	src/components/HeartbeatBar.vue
#	src/components/MonitorList.vue
#	src/icon.js
#	src/layouts/Layout.vue
#	src/mixins/datetime.js
#	src/mixins/socket.js
#	src/router.js
#	src/util.js
2022-09-17 16:12:57 +08:00
Justin Tisdale 6ec6410808 Merge branch 'master' into feature/expand-http-payload-support 2022-08-20 10:24:18 -04:00
Matthew Nickson c3d655afb4
Merge branch 'master' into feature/#1891-set-ping-packet-size 2022-08-13 21:15:16 +02:00
minhhn3 6bb79597e8 fix: resolve merge conflict 2022-08-13 13:26:05 +07:00
Louis Lam de6e1e7ddd Merge remote-tracking branch 'origin/master' into introduce-resend-interval
# Conflicts:
#	server/database.js
2022-08-13 13:24:00 +08:00
Justin Tisdale 31cc328839 fix lint 2022-08-11 21:08:13 -04:00
Justin Tisdale 0d58526f25 Merge branch 'master' into feature/expand-http-payload-support 2022-08-11 21:04:11 -04:00
Justin Tisdale 2b9bf095a6 Add non-json support for http body 2022-08-11 20:57:03 -04:00
Louis Lam 3b3763351b Merge remote-tracking branch 'origin/master' into radius-check
# Conflicts:
#	server/database.js
#	server/model/monitor.js
#	server/server.js
#	server/util-server.js
#	src/pages/EditMonitor.vue
2022-08-11 21:08:06 +08:00
minhhn3 34ab6142db fix: remove new space line 2022-08-08 19:38:43 +07:00
Louis Lam d0d1e0de28 Merge remote-tracking branch 'origin/master' into introduce-resend-interval
# Conflicts:
#	src/pages/EditMonitor.vue
2022-08-05 15:40:06 +08:00
minhhn3 2232236a7a [empty commit] pull request for add gRPC protocol 2022-08-03 13:39:31 +07:00
Minh Hoàng dcecd10c88
Feat/add gRPC protocol (#1)
* feat: added monitor with gRPC

Co-authored-by: minhhn3 <minhhn3@vng.com.vn>
2022-08-03 12:00:39 +07:00
Louis Lam 8ced61697a Fix save docker host issue 2022-07-30 19:48:12 +08:00
Moritz R 60e7824ff0
Merge branch 'master' into master 2022-07-24 14:37:22 +02:00
Louis Lam 88afd662db Merge remote-tracking branch 'origin/master' into postgres
# Conflicts:
#	package-lock.json
#	package.json
2022-07-24 14:07:30 +08:00
c0derMo e356d5f623 Fixing linting & adding documentation 2022-07-22 15:57:40 +00:00
c0derMo 0d098b0958 Docker Hosts are now a table & have their own dialog 2022-07-22 15:47:04 +00:00
Louis Lam 9a8b484ee8
Merge pull request #1853 from louislam/dns
Add cacheable-lookup
2022-07-18 23:46:55 +08:00
Louis Lam 1999541802 Merge remote-tracking branch 'origin/master' into dns 2022-07-18 23:25:14 +08:00
Louis Lam 2073f0c284 Bind cacheable-lookup to custom http agent 2022-07-18 22:33:35 +08:00
Matthew Nickson a54e58b4d6
Added Ping packet size #1891
This should fully implement #1891 by adding an extra field to the edit
monitor page and an extra column to the database. The user can now
set the size of the packet to send, it defaults to 56. A maximum limit
of 65500 was chosen to ensure that the total size of the packet does
not exceed the IPv4 maximum packet size and to comply with the limit
imposed by Windows.

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-07-14 08:32:51 +01:00
Louis Lam d29955f3ba
Merge pull request #1741 from Computroniks/feature/#1221-clickable-hostaname-on-status-page
Added #1221 clickable hostname in status page
2022-07-06 15:09:26 +08:00
Louis Lam 27dbc021b4 Add standalone manifest.json for each status page. Close #1668 2022-07-04 21:58:27 +08:00
Louis Lam baa592bce3 Merge remote-tracking branch 'origin/master' into feature/#1221-clickable-hostaname-on-status-page 2022-07-04 18:21:56 +08:00
Louis Lam 1f5466a3e8 Revert #1598 2022-06-23 15:54:33 +08:00
Matthew Nickson f1d24782f8
Merge branch 'master' into feature/#1221-clickable-hostaname-on-status-page 2022-06-18 23:53:35 +01:00
Christopher Pickering 945288f0c0
Added postgres monitor 2022-06-15 12:12:47 -05:00
OidaTiftla ac27e6e2af Rename feature to: Resend Notification if Down X times consequently
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2022-06-15 17:50:35 +02:00
OidaTiftla 869a040011
Merge branch 'master' into introduce-resend-interval 2022-06-15 16:19:47 +02:00
Moritz R ac449ec1c2
Merge branch 'master' into master 2022-06-15 11:33:00 +02:00
Christopher Pickering 660005b143
cleaned up code 2022-06-14 08:49:36 -05:00
Christopher Pickering 98f3c126e5
passed lint 2022-06-14 07:58:35 -05:00
sur.la.route cf2ca71dee
prevent null workstation #'s from passing..
to axios-ntlm
2022-06-14 07:42:53 -05:00
Aram Akhavan c690d1c3a1 fix timeout bypass for upside down push monitor 2022-06-13 22:05:58 -07:00
Louis Lam 6682839ec8 Merge remote-tracking branch 'origin/master' into ntml-auth
# Conflicts:
#	package-lock.json
#	package.json
#	server/database.js
#	server/model/monitor.js
#	server/server.js
#	server/util-server.js
2022-06-14 10:36:29 +08:00
Louis Lam 6424fe77ab Change successful log from info to debug in order to avoid large log and less disk usage 2022-06-13 21:15:47 +08:00
Louis Lam 6e43ef1dd3 Merge remote-tracking branch 'origin/master' into feat/cert-exp-settings
# Conflicts:
#	server/model/monitor.js
#	src/languages/en.js
2022-06-13 20:56:14 +08:00
Louis Lam a28ef56553 Merge remote-tracking branch 'gregdev/feature/axios-cached-dns-resolve' into feature/axios-cached-dns-resolve
# Conflicts:
#	package-lock.json
#	package.json
2022-06-13 18:53:19 +08:00
Louis Lam f570d41142 Merge remote-tracking branch 'origin/master' into feature/axios-cached-dns-resolve
# Conflicts:
#	package-lock.json
#	package.json
2022-06-13 18:50:43 +08:00
Matthew Nickson fbfa5a33ed
Added Clickable hostname on status page. #1221
This should fully implement #1221 by modifying the API and adding two
new properties to the result. The `sendUrl` property denotes if the URL
is sent and `url` is included when required.
Client side checks have been implemented in order to only show a link
when the URL is vaugely correct. I.e not "" or "https://". This prevents
the link from being included if the monitor type is not HTTP without
having to publicly expose the monitor type.
The exposure of the URL is configuarable for each monitor on each
status page by clicking on the link icon.

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-06-11 17:23:12 +01:00
Louis Lam 04e22f17a9 Merge remote-tracking branch 'origin/master' into christopherpickering_master
# Conflicts:
#	package-lock.json
#	src/languages/en.js
2022-06-11 20:59:58 +08:00
Louis Lam 11243a6ca1
Merge pull request #1222 from NETivism/issue-1201
Show some pure text body in notification when keyword not found
2022-06-09 19:33:10 +08:00
Nelson Chan 2c0180f323
Fix: Fix error when status page desc. is null 2022-06-07 14:57:23 +08:00
Louis Lam 091158cfe7 [Status Page] Preload data 2022-06-01 13:05:12 +08:00
Louis Lam a674caa520 [Status Page] Add og meta tags 2022-05-31 22:53:48 +08:00
Karel Krýda 25262cfb91
Update server/model/monitor.js
Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-05-30 15:31:45 +02:00
Louis Lam c095767f4a [Status Page] SSR 2022-05-30 15:45:44 +08:00
Louis Lam ffb7ba176c Merge remote-tracking branch 'origin/master' into status-page-inject-html 2022-05-30 14:00:39 +08:00
Aram Akhavan ea10d89f51 show correct down message for first tick 2022-05-28 19:57:45 -07:00
Louis Lam 7f46223d68 Fix another log.debug call 2022-05-28 23:22:44 +08:00
Louis Lam df4ce811d9 Merge remote-tracking branch 'origin/master' into kaysond_master
# Conflicts:
#	server/model/monitor.js
2022-05-28 23:19:58 +08:00
Moritz R e9e78c26e5
Merge branch 'master' into master 2022-05-27 13:59:58 +02:00
Aram Akhavan ab4edf2092
Fix log.debug calls 2022-05-26 21:45:56 -07:00
Louis Lam 35b8e89457
Merge pull request #1473 from Computroniks/#1059-specify-dns-resolver-port
Added #1059: Allow to specify Resolver Port for DNS Monitor
2022-05-25 14:59:14 +08:00
c0derMo 32cfd411f8 Fixed style & code errors 2022-05-19 12:35:55 +00:00
Moritz R a9f3142cee
Merge branch 'master' into master 2022-05-19 14:24:02 +02:00
Nelson Chan b7ba6330db Feat: Add cert exp. settings 2022-05-19 16:49:34 +08:00
Sascha Kruse da99a57560 Merge remote-tracking branch 'fxgh/radius-check' into radius-check 2022-05-18 15:56:21 +02:00
Sascha Kruse 42d68edab0
(style) add trailing comma
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-05-18 15:55:36 +02:00
Sascha Kruse 019d638767 Merge remote-tracking branch 'ghupstream/master' into radius-check 2022-05-18 15:54:10 +02:00
Louis Lam 7a46b44d25 Merge remote-tracking branch 'origin/master' into karelkryda_master
# Conflicts:
#	src/components/HeartbeatBar.vue
2022-05-18 19:49:54 +08:00
Christopher Pickering ef73af391f
added option for ntlm authorization 2022-05-13 12:58:23 -05:00
Christopher Pickering c346ea7864
updated name on export 2022-05-13 08:57:06 -05:00
sur.la.route e198f2f1ab
updated format
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-05-12 19:54:02 -05:00
Christopher Pickering 87f933df4f
added sqlserver monitor 2022-05-12 12:48:03 -05:00
Sascha Kruse 398ecb7666 add radius check 2022-05-12 15:21:13 +02:00
Louis Lam 59be9bb971 working 2022-05-11 00:51:11 +08:00
Karel Krýda 7da9f139c1 Bug fix 2022-05-09 21:10:12 +02:00
Aram Akhavan bb7d67f717
Apply suggestions from code review
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-05-06 09:58:05 -07:00
Karel Krýda 9a35386841
Merge branch 'master' into master 2022-05-06 11:24:21 +02:00
Louis Lam 429ad384d0 Fix hardcoded path for error.log and move errorLog() to UptimeKumaServer.errorLog() 2022-05-06 14:41:34 +08:00
OidaTiftla 98ee9caf2c
Add variable for currentTime
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-05-05 15:55:33 +02:00
OidaTiftla 8e99cbf426 Merge branch 'master' into introduce-resend-interval 2022-05-04 22:58:40 +02:00
Greg Smith cbfecab850 switch to the more-up-to-date esm-wallaby
https://github.com/wallabyjs/esm
2022-05-04 15:45:18 +09:30
Greg Smith d0546afe71 fix esm require: no ugly warnings 2022-05-01 10:22:16 +09:30
Karel Krýda b4ffcc5555 Added JSDoc 2022-04-30 15:50:05 +02:00
Karel Krýda f78d01d770 Resolve lint errors 2022-04-30 14:57:08 +02:00
Greg Smith f4515ad8c5 add axios cached dns resolve to monitor 2022-04-30 21:40:47 +09:30
Karel Krýda ed84e56a85 Merge remote-tracking branch 'origin_kuma/master'
# Conflicts:
#	package-lock.json
#	server/database.js
#	server/model/monitor.js
#	server/routers/api-router.js
#	server/server.js
#	src/components/MonitorList.vue
#	src/components/PingChart.vue
#	src/icon.js
#	src/pages/DashboardHome.vue
#	src/pages/StatusPage.vue
#	src/router.js
#	src/util.js
2022-04-30 13:40:34 +02:00
Matthew Nickson 3c01e8732c
Merge branch 'master' into #1059-specify-dns-resolver-port 2022-04-27 18:26:11 +01:00
Louis Lam 1687de163c
Merge pull request #1565 from Saibamen/eslint
Fix some of ESLint warnings
2022-04-27 15:00:49 +08:00
Aram Akhavan 39df4eea92 Ssynchronize push monitor heartbeats to api calls
Includes a 1s buffer time to allow the push url to be called before the monitor is checked
2022-04-26 13:48:44 -07:00
Adam Stachowicz 5fbfacf5ce Fix ESlint warnings 2022-04-26 00:26:26 +02:00
Matthew Nickson d1a3cd047a
Merge branch 'master' into #1059-specify-dns-resolver-port 2022-04-24 01:06:45 +01:00
Matthew Nickson 46da5e51be
Fix JSDoc grammar
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-22 19:10:13 +01:00
Matthew Nickson 1eecdec2d9
Update JSDoc for better clarity
Co-authored-by: Nelson Chan <chakflying@hotmail.com>
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-22 18:42:47 +01:00
Matthew Nickson 09e61d9d63
Changed Array<T> to type[]
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-21 20:02:18 +01:00
Matthew Nickson 0083485d4c
Updated server/model/* JSDoc to match new methods
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-21 18:30:04 +01:00
OidaTiftla 7ed8ae9f7c Fix trailing space warning 2022-04-21 18:23:32 +02:00
OidaTiftla d6b591a513
Make comment more readable
Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-21 17:45:58 +02:00
Matthew Nickson 6d22ebedca
Merge branch 'master' into add-JSDoc-comments 2022-04-21 13:01:22 +01:00
OidaTiftla 60f8ab7285 Use new logging mechanism 2022-04-21 12:09:59 +02:00
OidaTiftla b7e2489d22
Merge branch 'master' into introduce-resend-interval 2022-04-21 11:58:04 +02:00
Louis Lam 359a490ae3 Fix #1510 2022-04-18 15:21:58 +08:00
Louis Lam 5fa62a888c Merge branch 'master' into mqtt2
# Conflicts:
#	server/database.js
#	server/util-server.js
2022-04-17 19:46:33 +08:00
Louis Lam e6a8a84278 Include only nessacary data in webhook 2022-04-17 19:30:58 +08:00
Louis Lam 47c72192e1 [eslint] Enable yoda and eqeqeq 2022-04-17 15:43:03 +08:00
Louis Lam d71c086447 Standardize array bracket spacing 2022-04-17 15:27:35 +08:00
Louis Lam 8eb83394f7 Refine UI/UX for custom css / footer text. Add switch for show/hide powered by 2022-04-17 14:53:13 +08:00
Matthew Nickson 45f44b183d
Add JSDoc to server/model/*
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-16 21:11:45 +01:00
Louis Lam 8d8c38b1a8 Allow unused vars in args and fix more eslint issues 2022-04-17 01:39:49 +08:00
Louis Lam e34420368b Remove try-catch and fix username/password/port not working for mqtt 2022-04-17 01:06:47 +08:00
Louis Lam b1c7915bc1 Merge branch 'master' into mqtt2
# Conflicts:
#	package-lock.json
#	package.json
#	server/database.js
#	server/model/monitor.js
#	server/server.js
#	src/pages/EditMonitor.vue
2022-04-16 13:28:39 +08:00
Matthew Nickson 8c8eeaf627
Merge branch 'master' into #1059-specify-dns-resolver-port 2022-04-13 21:24:04 +01:00
Matthew Nickson b893d50e45
Implement specify Port for DNS Monitor #1059
This commit should fully implement #1059. When the user selects the DNS
monitor option, a new input box has been added below the resolver
address allowing the user to implement the port to access the resolver
on. This uses the same `monitor.port` as the TCP monitor but a monitor
has been added to prefill the port value to the default of `53` if the
value in this field has not already been set. This is then cleared if
the user selects a different monitor type and has not changed the port
value. A translation has also been added explaining what this field
does in order to reduce any confusion. JSDoc documentation has also been
added to the `dnsResolve` function in `util-server.js`.

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-13 21:02:19 +01:00
Louis Lam 649f3106e1 Enforce semicolon, fix format globally 2022-04-14 01:20:54 +08:00
Louis Lam e9ce1433cd Change log_info to log.info by making it into an object 2022-04-13 23:33:37 +08:00
Moritz R 361e44ad6a
Merge branch 'louislam:master' into master 2022-04-13 15:58:17 +02:00
Louis Lam 279e2eb3f6 Merge branch 'master' into logging
# Conflicts:
#	server/database.js
#	server/jobs.js
#	server/model/monitor.js
#	server/routers/api-router.js
#	server/server.js
#	server/socket-handlers/status-page-socket-handler.js
#	server/util-server.js
2022-04-12 16:32:14 +08:00
Louis Lam c9fa183712 Manage domain names 2022-04-10 00:25:27 +08:00
Louis Lam c4e74c9943 Render <StatusPage> if domain matched 2022-04-06 22:43:22 +08:00
Louis Lam 70311f7a5a Add an option to enable/disable the domain name expiry notification #1364 2022-04-05 21:27:50 +08:00
Moritz R af44b0beab
Merge branch 'master' into master 2022-04-03 17:19:29 +02:00
Moritz R 84a0b24448
Update server/model/monitor.js
As per recommendation of @Computroniks

Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-04-03 17:15:21 +02:00
Jimmy Huang a4be651118
Update server/model/monitor.js
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-04-01 15:26:50 +08:00
Louis Lam 04e3394d02 Merge branch 'master' into feature/request-with-http-proxy
# Conflicts:
#	package-lock.json
#	package.json
#	server/database.js
#	src/languages/en.js
#	src/mixins/socket.js
2022-04-01 14:57:35 +08:00
OidaTiftla 91366ff565
Merge branch 'master' into introduce-resend-interval 2022-03-27 21:19:57 +02:00
Louis Lam be88351eb3
Merge pull request #1136 from chakflying/fix/prometheus-on-delete
Fix: Remove prometheus metrics on delete [Test needed]
2022-03-27 11:05:50 +08:00
Louis Lam aef0a66205 [Status Page] Simplify show tags logic 2022-03-18 17:56:46 +08:00
Louis Lam e87cdf4d09 [Status Page] wip, upload logo and status page listing 2022-03-17 16:42:26 +08:00
Louis Lam 1033ca5cf4 [Status Page] wip, combine api, add status_page_id into group and incident tables 2022-03-16 15:38:10 +08:00
Louis Lam 18ec42b060 [Status Page] wip 2022-03-16 14:14:47 +08:00
Louis Lam 50d6e888c2 [new status page] wip 2022-03-10 21:34:30 +08:00
Uğur Erkan 8078d0618d Add socks proxy support to proxy feature
- Socks proxy support implemented.
- Monitor proxy agent create flow refactored
  and moved under proxy class.

Thanks for suggestion @thomasleveil
2022-03-06 19:34:51 +03:00
Uğur Erkan 78d76512ba Add http and https proxy feature
Added new proxy feature based on http and https proxy agents.
Proxy feature works like notifications, there is many proxy
could be related one proxy entry.

Supported features
- Proxies can activate and disable in bulk
- Proxies auto enabled by default for new monitors
- Proxies could be applied in bulk to current monitors
- Both authenticated and anonymous proxies supported
- Export and import support for proxies
2022-03-06 19:34:49 +03:00
Louis Lam 595cd93220 Check invalid interval 2022-02-24 15:11:17 +08:00
Jimmy Huang 244a7b3671
Update server/model/monitor.js
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-02-07 18:46:16 +08:00
Karel Krýda b49e5d5c39 The SQL query to determine if the monitor is under maintenance is now in its own method. 2022-01-25 19:07:27 +01:00
Jimmy Huang ee90d2713f refs issue-1201 in upstream.
Add 100 characters from response body to bean.msg after keyword not match.
2022-01-25 17:39:19 +08:00
Karel Krýda e7b2832967 The start and end dates of the maintenance are now stored in UTC, which allows it to be converted between time zones 2022-01-24 22:33:15 +01:00
OidaTiftla f390a8caf1 Fix missing DB patch and use DATETIME as column format 2022-01-24 21:59:25 +01:00
Karel Krýda 5fda1f0f59 minor fixes (missing commas, spaces, translations) 2022-01-23 20:33:39 +01:00
OidaTiftla 11e9eee09d Change seconds to minutes 2022-01-23 17:48:09 +01:00
OidaTiftla 1ac904d6d6 Introduce resend interval if down 2022-01-23 15:22:57 +01:00
Karel Krýda 0d3414c6d6 A complete maintenance planning system has been created 2022-01-23 15:22:00 +01:00
c0derMo 29df70949d Add ability to connect to daemon via http / tcp for windows compatibility 2022-01-22 01:57:37 +00:00
Tarun Singh 22256dfcd2 added timeout for removing the dead loop state 2022-01-20 13:04:59 -05:00
c0derMo 4818bb67d6 Added trailing comma, fixed spelling & translation 2022-01-14 09:09:37 +00:00
c0derMo c5cc42272f Fixing the editing of docker container & adding english translation 2022-01-13 18:28:45 +00:00
c0derMo b0259b5592 Added docker container monitor 2022-01-13 16:17:07 +00:00
Louis Lam 227bbdea2f [MQTT] Try to improve error handling 2022-01-13 12:42:34 +08:00
Louis Lam 6272514820 [MQTT] Use existing fields instead of creating new ones (Server) 2022-01-13 11:53:08 +08:00
Louis Lam 076d6bdbb6 Merge branch 'master' into mqtt
# Conflicts:
#	package-lock.json
#	server/database.js
2022-01-13 11:09:16 +08:00
Nelson Chan 1e92487f30 Chore: Remove onDelete as unused 2022-01-07 12:28:08 +08:00
Nelson Chan edd2534a1b Fix: Clear metrics also on stop and edit 2022-01-07 12:26:26 +08:00
Nelson Chan f6ef390c76 Fix: Remove Prom. metrics on delete monitor 2022-01-07 12:04:57 +08:00
Tarun Singh d3c90df8a8 fixed edit monitor fields empty issues 2021-12-18 16:35:18 -05:00
Louis Lam a42932a43e Simulate Chrome's request Accept header. Better handling of #1067 2021-12-16 15:09:10 +08:00
Juan Cruz Vincenti 934d633d4d Add description to monitor
* Add description to monitor model
* Add description field to database
* Add english and spanish translation for description
* Closes: #482
2021-12-14 19:11:32 -03:00
Andreas Brett 38f8a8ac2f
Merge branch 'louislam:master' into logging 2021-12-10 17:21:55 +01:00
Louis Lam dcc91d6c72 Fix #922 2021-12-08 14:59:59 +08:00
Andreas Brett a13bdaac84
Merge branch 'master' into logging 2021-11-29 20:32:42 +01:00
Louis Lam 92a5f18bf5
Merge pull request #864 from ivanbratovic/http-basicauth
Implement explicit HTTP "basic" authentication support
2021-11-23 22:48:54 +08:00
Louis Lam 3d222ac5f5 fix btoa is not define 2021-11-23 12:59:48 +08:00
Tarun Singh 35da8c78f4 added connection timeout and refactored code 2021-11-22 03:21:53 -05:00
Tarun Singh 3f5133d1ba Added authentication logic 2021-11-16 20:44:10 -05:00
Andreas Brett e5913c5abc separate log functions 2021-11-15 17:52:28 +01:00
Andreas Brett bdcdf47e52 introduce consistent logging 2021-11-11 12:31:28 +01:00
Louis Lam 41a6d1b701 Fix parseCertificateInfo possibly in dead loop 2021-11-08 15:39:17 +08:00
Ivan Bratović 34d8984e3a
Merge branch 'master' into http-basicauth 2021-11-07 17:15:36 +01:00
Louis Lam c92153c97e add more debug msg 2021-11-07 21:00:47 +08:00
Tarun Singh 2d802585ff
Update review suggestions
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2021-11-04 22:21:54 -04:00
Ivan Bratović 179ca232bc Minor refactor - change variable names and add commas to object definitions 2021-11-04 10:14:17 +01:00
Ivan Bratović 0dcb7aed21 Delinting 2021-11-04 09:50:10 +01:00
Ivan Bratović 23736549f9 Implement HTTP basic auth feature 2021-11-04 09:50:10 +01:00
Tarun Singh 670754b697 added MQTT monitor type 2021-11-03 21:46:43 -04:00
Louis d7f7dba13f write some error logs to ./data/error.log 2021-10-29 18:24:47 +08:00
Louis Lam eb22ad5ffe [certificate notification] error handling and better msg 2021-10-27 16:12:18 +08:00
Louis Lam f5f4835b74 [certificate notification] clear sent history if the cert is changed 2021-10-27 16:03:16 +08:00
Louis Lam 44c1b336dc send certificate notifications in 21, 14, 7 days 2021-10-27 15:33:15 +08:00
Louis Lam 640b6e5b1c prevent monitor dead for unexpected error 2021-10-27 14:08:44 +08:00
Louis Lam 698a38e773 clear status page cache in a better place 2021-10-27 11:39:46 +08:00
Louis Lam 68d44dd9b3 [steam] do not request if there is no steam api key 2021-10-18 17:11:41 +08:00
Louis Lam 20d59e5a13 fix and move the steam api key to settings page 2021-10-18 17:02:05 +08:00
Louis Lam ae31eb6ba9 Merge branch 'master' into Revyn112_master
# Conflicts:
#	server/model/monitor.js
#	src/languages/en.js
#	src/pages/EditMonitor.vue
2021-10-18 15:50:35 +08:00
Bert Verhelst 1d63dd9ddd fix(monitor): safely get status of previous beat if first beat 2021-10-16 11:28:03 +02:00
Louis Lam 7276f34d90 fix reset-password 2021-10-16 00:57:26 +08:00
Louis Lam cd211a6be7 [http options] fine tune 2021-10-15 18:36:40 +08:00
Louis Lam 4e71ab7406 Merge branch 'master' into feature/add-support-for-method-body-and-headers 2021-10-15 16:07:05 +08:00
Louis Lam 3b74b727f2 [Push Type] fix missing important flag and missing up notification 2021-10-14 22:32:15 +08:00
Bert Verhelst 5445c2a2ff fix(monitor): revert unintentional change to comment 2021-10-10 18:41:29 +02:00
Bert Verhelst dc08510e72 Merge remote-tracking branch 'origin/master' into feature/add-support-for-method-body-and-headers 2021-10-10 18:40:53 +02:00
LouisLam 82131f4dd2 merge conflict 2021-10-10 13:09:30 +08:00
Bert Verhelst 5137c80c07 fix(monitor): handle empty headers 2021-10-09 21:51:24 +02:00
LouisLam 56ae6f6117 fix demoMode export 2021-10-10 02:36:20 +08:00
LouisLam 5c89562650 not allow lower than 20s for demo mode 2021-10-10 02:23:27 +08:00
Bert Verhelst d71d27220b fix(edit-monitor): store headers as JSON 2021-10-09 12:42:32 +02:00
Bert Verhelst fba4f86552 Merge branch 'master' into feature/add-support-for-method-body-and-headers 2021-10-09 12:35:08 +02:00
LouisLam a15e9077fc [status page] clear cache if it is an important beat 2021-10-09 17:04:51 +08:00
Bert Verhelst ec4b7e4064 Merge remote-tracking branch 'louislam/master' into feature/add-support-for-method-body-and-headers 2021-10-07 18:22:59 +02:00
LouisLam e5f6d7f047 slack and rocket.chat use the primary base url
env var to show time logger
2021-10-07 17:39:58 +08:00
Bert Verhelst 3f0b85e5a8 feat(http-requests): add support for methods, body and headers for http 2021-10-02 16:48:27 +02:00
LouisLam 1ed4ac9494 add Push-based monitoring (#279) 2021-10-01 00:09:43 +08:00
LouisLam 3e4154dfb5 Fix retry interval affected bug 2021-09-29 17:20:35 +08:00
Denis Freund b67b4d5afd add steam gameserver for monitoring 2021-09-27 11:17:57 +02:00
LouisLam 0a5a6e6a4b [status page] fix monitor order 2021-09-22 15:23:58 +08:00
LouisLam fe0fc63843 [status page] send uptime 2021-09-22 15:10:08 +08:00
LouisLam 7ee98d989c [status page] implement rest api for heartbeat 2021-09-19 23:24:51 +08:00
LouisLam fd95d41d9f [status page] many update and save group list 2021-09-19 19:04:51 +08:00
Louis a6fdd272a6 [status page] minor 2021-09-17 14:42:19 +08:00
LouisLam 2955abb5d9 [status page] create incident 2021-09-16 22:48:28 +08:00
LouisLam 392f8275b3 Merge branch 'master' into public-dashboard
# Conflicts:
#	server/database.js
2021-09-16 16:53:54 +08:00
Louis Lam 72783fd94c
Merge pull request #380 from No0Vad/retry-heartbeat-interval
Added support for a retry interval to monitors
2021-09-16 00:21:53 +08:00
No0Vad 1300448bed Adjustments to the retry interval
The monitor logic for when to use "retryInterval" is updated. Also removed some texts when they are no longer needed.
2021-09-15 00:59:06 +02:00
LouisLam 9902c181bc Merge branch 'master' into public-dashboard
# Conflicts:
#	src/components/MonitorList.vue
#	src/icon.js
2021-09-14 15:05:04 +08:00
Nelson Chan 6e3a904aaa WIP: Add tags functionality
WIP: add color column, show tags

WIP: Improve TagsManager styling & workflow

WIP: Improve styling & validation, use translation

WIP: Complete TagsManager functionality

WIP: Add tags display in monitorList & Details

Fix: update tags list after edit

Fix: slightly improve tags styling

Fix: Improve mobile UI

Fix: Fix tags not showing on create monitor

Fix: bring existingTags inside tagsManager

Fix: remove unused tags prop

Fix: Fix formatting, bump db version
2021-09-13 14:12:11 +08:00
LouisLam e205adfd7b [status page] developing 2021-09-13 02:26:45 +08:00
No0Vad f8f9f59464 Added support for a retry interval to monitors
If a check fails and retries are used you can now specify a specific value for that. So you can check faster if the site goes back up again.
2021-09-11 18:54:55 +02:00
LouisLam 8ee34c7904 also handle the first beat problem in uptime 2021-09-09 15:55:34 +08:00
LouisLam 4f07c2ea9a uptime calculation fully sum in sql 2021-09-09 15:46:28 +08:00
LouisLam 6006038689 fix monitor.stop() in some cases 2021-09-08 20:00:16 +08:00
LouisLam 0ddbac5109 Revert "move userMonitorList out of server.js"
This reverts commit a7cf14c663.
2021-09-08 19:54:38 +08:00
LouisLam 0f440596c8 Revert "cache last heartbeat list in memory"
This reverts commit 87678ea92d.
2021-09-08 19:54:37 +08:00
LouisLam 87678ea92d cache last heartbeat list in memory 2021-09-08 18:58:02 +08:00
LouisLam a7cf14c663 move userMonitorList out of server.js 2021-09-08 16:27:37 +08:00
LouisLam bf29f28726 send stats only if there is at least one client in the room 2021-08-30 14:55:33 +08:00
Ponkhy 858affa808 Removed useless database query 2021-08-28 21:29:24 +02:00
Ponkhy 303adbf9b1 Show latest dns result in Details.vue 2021-08-28 21:20:25 +02:00
LouisLam 46ac753c46 Merge branch 'master' into dns-monitor 2021-08-26 01:05:46 +08:00
Ponkhy d313a06d5c Optimizations for output handling 2021-08-25 09:31:42 +02:00
Ponkhy 44d9fa63f0 Adjusted the output for A and AAAA records 2021-08-24 11:47:12 +02:00
Ponkhy b2041cb36b Fixed ESLint Errors 2021-08-23 16:30:11 +02:00
LouisLam aa2233eb2d log notification error 2021-08-23 20:57:42 +08:00