Commit Graph

2051 Commits

Author SHA1 Message Date
mkdev11
dc1e96f7d1 refactor: address CommanderStorm's review feedback
- Use i18n-t for description with code tag and RFC 8446 spec link
- Add comment that TLS alert names are from spec (not translatable)
- Refactor TCP monitor into smaller functions:
  - checkTcp() for standard TCP connectivity check
  - performStartTls() for STARTTLS handshake
  - checkTlsCertificate() for TLS certificate validation
  - attemptTlsConnection() for TLS connection with alert capture
- Improve error messages with more context
2026-01-06 20:29:21 +02:00
mkdev11
327b51f304 refactor: integrate TLS alert checking into TCP monitor
Per CommanderStorm's feedback, instead of creating a separate TLS monitor
type, add the TLS alert checking functionality directly to the existing
TCP monitor.

Changes:
- Add TLS_ALERT_CODES, parseTlsAlertNumber(), getTlsAlertName() to tcp.js
- Add checkTlsAlert() method to TCPMonitorType for mTLS verification
- Add 'Expected TLS Alert' dropdown to TCP monitor UI
- Remove separate TLS monitor type (tls.js)

This allows users to verify mTLS endpoints reject connections without
client certificates by expecting specific TLS alerts like
'certificate_required'.

Closes #5837
2026-01-06 20:28:09 +02:00
mkdev11
7920057207 feat: add TLS monitor type for mTLS endpoint monitoring
Add a new TLS monitor type that allows monitoring mTLS endpoints to verify
they properly reject connections without client certificates.

Features:
- New TLS monitor type with hostname and port configuration
- Expected TLS Alert dropdown to specify which TLS alert to expect
- Support for certificate_required (116) alert for mTLS verification
- Optional certificate expiry monitoring when connection succeeds
- Ignore TLS errors option

Closes #5837
2026-01-06 20:27:15 +02:00
MkDev11
b1355c67f0
feat(serwersms): add group messaging support (#6610)
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-06 17:12:51 +00:00
IsayIsee
2cf2faa3a9
Merge branch 'master' into my_dev 2026-01-06 17:48:30 +08:00
autofix-ci[bot]
e28bdeeb84
[autofix.ci] apply automated fixes 2026-01-06 09:47:51 +00:00
IsayIsee
cae76f022f
Implement message sanitization for Aliyun SMS
Added a method to remove IP addresses and domains from SMS messages to comply with Aliyun SMS restrictions.
2026-01-06 17:21:11 +08:00
leonace924
f0751fcf5a fix: update the test 2026-01-06 02:37:05 -05:00
leonace924
806dadce5c fix: update the test 2026-01-06 02:11:49 -05:00
leonace924
c7702a3b23 fix: update the test to pass CI test 2026-01-06 02:05:23 -05:00
leonace924
a034436769 fix: apply both updates to mssql server monitor and mssql test 2026-01-06 01:54:38 -05:00
leonace924
32456d32fe fix: address the comment 2026-01-06 01:42:20 -05:00
Pegasus
9437d25074 Update server/monitor-types/mysql.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-06 01:42:20 -05:00
Pegasus
857f4e9550 Update server/monitor-types/mysql.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-06 01:42:20 -05:00
Pegasus
0188769636 Update server/monitor-types/mysql.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-06 01:42:20 -05:00
leonace924
e6481fa8aa fix: remove duplicate and keep old behavior 2026-01-06 01:42:20 -05:00
leonace924
2d94803876 fix: remove unused code 2026-01-06 01:42:20 -05:00
leonace924
d825352410 feat: extract MySQL/MariaDB monitor to its own monitor-type and enable conditions support 2026-01-06 01:42:20 -05:00
leonace924
ad1b0c10a0 fix: address the comments 2026-01-06 00:15:54 -05:00
leonace924
ac87fa1969 feat: add rss title field and handle rss link from request 2026-01-06 00:15:53 -05:00
mkdev11
8b145d2522 refactor: split MQTT check() into smaller functions
Per CommanderStorm's feedback, refactor the check() method into:
- checkKeyword() - for legacy keyword matching
- checkJsonQuery() - for legacy JSONata query
- checkConditions() - for new conditions system

Also add test cases for MQTT conditions:
- Message condition with contains operator
- Topic condition with equals operator
- Condition mismatch rejection
- Multiple conditions with AND logic

This improves readability and maintainability.
2026-01-06 03:48:31 +02:00
mkdev11
e22784aaea fix: guard against undefined conditions in MQTT monitor
Add check for monitor.conditions before calling fromMonitor() to
prevent JSON.parse(undefined) error when monitors don't have
conditions defined.
2026-01-06 03:19:22 +02:00
mkdev11
cf1391db6b feat: add conditions support for MQTT monitor type
Add rich conditions support to MQTT monitor similar to DNS monitor,
allowing users to define flexible conditions on:
- topic: The MQTT topic that received the message
- message: The raw message content
- json_value: JSONata-extracted value from JSON payloads

This provides a more intuitive and powerful way to validate MQTT
messages compared to the basic keyword/json-query checks.

Maintains backward compatibility with existing keyword and json-query
check types.

Closes #5992
2026-01-06 03:08:10 +02:00
Frank Elsinga
1f1d28aaa2
Merge branch 'master' into google-chat-url-link 2026-01-06 00:51:50 +01:00
mkdev11
4cad39740e refactor: use extractAddress() method for monitor address
Address review feedback from CommanderStorm to use the inherited
extractAddress() method instead of directly accessing monitorJSON["url"].
This properly handles different monitor types (ping, port, dns, etc.).
2026-01-06 01:43:40 +02:00
Frank Elsinga
038184f7fe
Update server/model/monitor.js 2026-01-05 20:25:22 +01:00
Frank Elsinga
b2c9ccbeee
Update server/model/monitor.js 2026-01-05 20:25:14 +01:00
Frank Elsinga
d7db40ba52
Merge branch 'master' into CommanderStorm-patch-2 2026-01-05 18:13:26 +01:00
mkdev11
13b49bb417 feat: add monitored URL link to Google Chat notifications
Add the monitored service URL as a clickable link in Google Chat
notifications, allowing users to quickly navigate to the affected
service for immediate investigation.

Closes #5952
2026-01-05 15:56:26 +02:00
Frank Elsinga
31b8dd64c7
Merge branch 'master' into master 2026-01-05 09:40:39 +01:00
Frank Elsinga
b25b2c7faa
Update server/model/monitor.js
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-05 08:41:11 +01:00
Frank Elsinga
3ae495e33b
Update server/model/monitor.js
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-05 08:41:00 +01:00
Frank Elsinga
e9043c7352
Update server/model/monitor.js
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-05 08:40:32 +01:00
autofix-ci[bot]
6ce5e90650
[autofix.ci] apply automated fixes 2026-01-05 07:37:25 +00:00
Frank Elsinga
5af0753415
Enhance error handling for container state checks 2026-01-05 08:30:23 +01:00
Eddie Fiorentine
afa81fdef8
Update server/monitor-types/sip-options.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-04 22:22:25 -05:00
Eddie Fiorentine
7827033456
Update server/monitor-types/sip-options.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-04 22:22:17 -05:00
Eddie Fiorentine
032eb891ae
Update server/monitor-types/sip-options.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-04 22:21:51 -05:00
GivenBY
e83039f30b Fix: reuse base template renderer and escape MarkdownV2 output 2026-01-04 10:36:34 +05:30
GivenBY
e69a427791
Merge branch 'louislam:master' into fix-telegram-markdown-escape 2026-01-04 10:26:29 +05:30
Frank Elsinga
5baac436d3
Merge branch 'master' into master 2026-01-03 17:12:44 +01:00
Frank Elsinga
d172f2fde9
Merge branch 'master' into feature/umami-analytics-status-page 2026-01-03 16:57:11 +01:00
GivenBY
6675ce5086 Fix: escape Telegram MarkdownV2 after template rendering 2026-01-03 20:52:39 +05:30
Markus Reisenhofer
d096e2902c
feat(gamedig): Update gamedig implementation to v5 (#4949)
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-03 05:56:38 +00:00
Frank Elsinga
cb9e29a00c
Merge branch 'master' into feature/local-service-monitor 2026-01-02 17:38:22 +01:00
Frank Elsinga
a36b365f4d
fix(rss): fix the rss endpoint having the wrong content type (#6570) 2026-01-02 16:02:31 +00:00
iotux
b3f84f0bf8
Merge branch 'louislam:master' into feature/local-service-monitor 2026-01-02 13:56:19 +07:00
Frank Elsinga
951b375a60
Merge branch 'master' into feature/5934 2026-01-02 07:27:51 +01:00
iotux
e99cd18268
Update server/monitor-types/system-service.js
Thanks for your help wit this

Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-02 07:07:47 +01:00
Frank Elsinga
7ca370b048
Merge branch 'master' into security/improved-security 2026-01-02 07:06:28 +01:00
iotux
700eefafe4
Merge branch 'louislam:master' into feature/local-service-monitor 2026-01-02 13:04:15 +07:00
Frank Elsinga
cd874e787b
Merge branch 'master' into fix/discord-empty-service-url 2026-01-02 06:48:45 +01:00
Frank Elsinga
e4552a2184
simplify extractAddress(monitorJSON) a bit more 2026-01-02 06:47:29 +01:00
Frank Elsinga
1532acaaf3
don't call extractAddress twice 2026-01-02 06:46:50 +01:00
Frank Elsinga
f695304537
Merge branch 'master' into add-og-meta-tags 2026-01-02 06:41:04 +01:00
Frank Elsinga
6a95a88213
Update server/model/status_page.js 2026-01-02 06:40:27 +01:00
Julian Speckmann
4ee7fb208d
Merge branch 'master' into security/improved-security 2026-01-02 04:29:06 +01:00
iotux
49962ebe6b
Merge branch 'louislam:master' into feature/local-service-monitor 2026-01-01 23:19:30 +07:00
Frank Elsinga
9abded0baf fix imports 2026-01-01 16:34:05 +01:00
iotux
a6239a6200 Fixed a linting err 2026-01-01 12:18:56 +01:00
iotux
1faed64e13 Merge remote-tracking branch 'upstream/master' into feature/local-service-monitor 2026-01-01 12:11:27 +01:00
DanielDerefaka
c9381154a6 feat(status-page): add og:type and og:image Open Graph meta tags
Added additional Open Graph meta tags to status pages for better
social media sharing:
- og:type (set to "website")
- og:image (uses the status page icon if configured)

This complements the existing og:title and og:description tags.

Fixes #6514
2026-01-01 11:41:11 +01:00
DanielDerefaka
b16aa9c832 fix(discord): hide empty Service URL and N/A Ping fields
- Only show Service URL field when extractAddress returns a non-empty value
- Only show Ping field when ping value is not null
- This fixes unnecessary 'https://' and 'N/A' values showing for groups

Fixes #3327

Contribution by Gittensor, see my contribution statistics at https://gittensor.io/miners/details?githubId=101010297
2026-01-01 11:07:16 +01:00
iotux
2c47174a04 Merge branch 'feature/local-service-monitor' of https://github.com/iotux/uptime-kuma into feature/local-service-monitor 2026-01-01 09:55:14 +01:00
iotux
97d836d7f4 Modified according to review 2026-01-01 09:41:24 +01:00
iotux
6bc382ef4d
Update server/monitor-types/system-service.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-01 08:41:09 +01:00
iotux
f3c554d0ec
Update server/monitor-types/system-service.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-01 08:37:42 +01:00
iotux
6c93930d3e
Update server/monitor-types/system-service.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-01 08:35:59 +01:00
iotux
2dbd8aecf2
Update server/monitor-types/system-service.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-01 08:34:47 +01:00
Frank Elsinga
bcdf6b8959
Merge branch 'master' into websocket_test 2026-01-01 08:25:14 +01:00
iotux
c09882b00a
Update server/monitor-types/system-service.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-01 08:19:55 +01:00
iotux
134877317c
Update server/monitor-types/system-service.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-01 08:18:05 +01:00
iotux
132a03874d
Update server/monitor-types/system-service.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2026-01-01 08:03:57 +01:00
Pedro Magno
414fc5612a
Merge branch 'master' into feature/mssql-monitor 2026-01-01 01:37:47 +00:00
PoleTransformer
88b9283051
Merge branch 'master' into websocket_test 2025-12-31 18:20:30 +00:00
PoleTransformer
8594bc81b3 Enforce backend WS timeout + subprotocol logic + formatting 2025-12-31 09:51:53 -08:00
lsnnt
55d21b72ba not checked lint now checked lint and the backend test to see everything working 2025-12-31 11:02:17 +05:30
lsnnt
6c3afcca08 added direct text support for countering xss and test were also failing 2025-12-31 10:55:23 +05:30
lsnnt
bdf499edd2 Added the Dompurify to sanitize html content 2025-12-31 10:44:23 +05:30
PoleTransformer
20e2cf69e4 Add timeout selection + refine error logic + update tests 2025-12-30 20:29:55 -08:00
Nityanand Thakur
f74834e4ca
Update server/notification-providers/resend.js
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2025-12-31 09:54:20 +05:30
PoleTransformer
a2c81ebf44 minor patch 2025-12-30 17:57:29 -08:00
PoleTransformer
0bee90ea31 WS test status code support + improved error handing + subprotocol input 2025-12-30 17:49:09 -08:00
Nityanand Thakur
49273f94ef
Merge branch 'master' into master 2025-12-30 18:44:40 +05:30
iotux
1d118b4852
Merge branch 'louislam:master' into feature/local-service-monitor 2025-12-30 19:53:40 +07:00
Pedro Magno
e62008cfb0
Merge branch 'master' into feature/mssql-monitor 2025-12-30 11:16:42 +00:00
Pedro Magno
534ba5d547 chore: Extract the sqlserver monitor to its own monitor-type. Enable support conditions for a single result value. 2025-12-30 11:06:04 +00:00
lsnnt
761ef68c29 fixed something and added resend in en.json 2025-12-30 13:15:33 +05:30
xNewz
7ef7abe6be fix: remove accidental websocket changes 2025-12-30 14:15:21 +07:00
lsnnt
7578f55b94 Added the notification provider 2025-12-30 12:30:26 +05:30
xNewz
7e74579312 Handle websocket errors with missing messages 2025-12-30 07:52:49 +07:00
xNewz
76283148ba Remove LINE Notify provider 2025-12-30 07:41:30 +07:00
Julian Speckmann
216aaa239f Enhance description rendering in StatusPage by using marked for Markdown support 2025-12-29 02:54:33 +01:00
copilot-swe-agent[bot]
d15539ca71 Fix crypto.randomBytes() usage in hash.js - replace with crypto.randomInt()
Co-authored-by: KingIronMan2011 <176780813+KingIronMan2011@users.noreply.github.com>
2025-12-29 01:38:44 +00:00
copilot-swe-agent[bot]
1362286dac Remove unused 'marked' import from status_page.js
Co-authored-by: KingIronMan2011 <176780813+KingIronMan2011@users.noreply.github.com>
2025-12-29 01:36:42 +00:00
Frank Elsinga
4dc8f2c72c
Merge branch 'master' into feature/umami-analytics-status-page 2025-12-25 02:20:35 +01:00
iotux
fcdc22a661
Merge branch 'louislam:master' into feature/local-service-monitor 2025-12-24 12:20:14 +07:00
Julian Speckmann
5117d6dbad fix: improve description handling in renderHTML method 2025-12-24 04:08:21 +01:00
Julian Speckmann
11d460f0b8 fix: use crypto.randomBytes for secure pseudo-random value generation 2025-12-24 04:05:20 +01:00
Anthony
b6e8d548b0
fix: update dns monitor to evaluate full response list on CAA resolver_type (#6520) 2025-12-24 03:36:28 +01:00