Alex Holliday
7478bd7d17
remove duplicate validation
2026-08-17 13:08:43 -07:00
Alex Holliday
7b1d6c763f
tighten types, remove duplicate calls
2026-08-17 13:05:03 -07:00
Alex Holliday
ff2e1fd648
use reduce
2026-08-17 12:59:23 -07:00
Alex Holliday
9001a8d294
add tests
2026-08-17 12:58:56 -07:00
Alex Holliday
ab7f2cd8f4
update openapi docs
2026-08-17 12:36:39 -07:00
Alex Holliday
c1f0bf3dd4
wire controller
2026-08-17 12:31:01 -07:00
Alex Holliday
3fc7020a90
move methods to checks, wire up service
2026-08-17 12:26:49 -07:00
Alex Holliday
6f9642c298
tighten timezone validation
2026-08-17 11:48:56 -07:00
Alex Holliday
3a22d3e819
add range buckets for status pages
2026-08-17 11:48:44 -07:00
Alexander Holliday
697574a2a9
Merge pull request #3834 from colinjtsen2010/feat/domain-monitoring
...
feat: add domain registration expiry monitoring
2026-08-17 10:51:11 -07:00
Alex Holliday
0cbd9ab8a2
point lockfile at official npm registry
2026-08-17 10:49:39 -07:00
Marcos Paulo Diniz
d4eaad6170
fix(notifications): route Rocket.Chat links by monitor type
...
Build title_link from the monitor type (hardware -> infrastructure,
pagespeed -> pagespeed, uptime types -> uptime) and omit it when
clientHost is not configured, instead of always linking to the
infrastructure page.
2026-08-13 11:56:28 -03:00
colinjtsen2010
75516a220d
fix: handle IPs, avoid wrong parent-domain lookups, cache whois results
...
- Bare IP addresses and non-domain hosts (localhost, IPv6) now return a
null expiry instead of throwing, so they no longer spam error logs.
- Extract the registrable domain with tldts instead of walking up
hostname labels, so a subdomain can never accidentally return its
parent domain's expiry date.
- Cache WHOIS lookups per registrable domain (1h positive, 10min
negative) so visiting details pages does not re-query the registry
every time.
Addresses review feedback on #3834 .
2026-08-13 12:02:49 +08:00
colinjtsen2010
e5959ca91d
feat: add domain registration expiry monitoring
...
Adds a GET /monitors/domain/:monitorId endpoint that looks up the
registrable domain's WHOIS expiry date (walking up from subdomains),
and displays it next to the certificate expiry on the uptime details
page.
Fixes #2094
2026-08-11 00:34:21 +08:00
Marcos Paulo Diniz
8d1fd61bb4
fix(notifications): omit empty incident links
2026-08-07 14:55:05 -03:00
Marcos Paulo Diniz
865fa7cce6
feat(notifications): add rich alert fields
2026-08-07 14:55:05 -03:00
Marcos Paulo Diniz
2c780b8101
feat(notifications): add Rocket.Chat attachments
2026-08-07 14:55:05 -03:00
Marcos Paulo Diniz
ee25c6b479
feat(notifications): enrich Rocket.Chat tests
2026-08-07 14:55:05 -03:00
Alexander Holliday
514ee0d30b
Merge pull request #3822 from mdiniz97/feat/rocket-chat-notifications
...
feat: Rocket.Chat notifications
2026-08-05 09:33:42 -07:00
Marcos Paulo Diniz
466d356ad1
refactor(validation): use Zod URL protocols
...
Refs #3821
2026-08-05 08:34:12 -03:00
Marcos Paulo Diniz
0c184e6d0c
fix(notifications): guard incident link
...
Refs #3821
2026-08-05 08:33:29 -03:00
Alex Holliday
303f47a117
add opt out flag for recent checks
2026-08-04 15:30:34 -07:00
Alex Holliday
5fa74bd883
replace findAll with findAllForScheduling
2026-08-04 15:16:03 -07:00
Alex Holliday
4c8342f379
fix pretty name bug, ordering bug
2026-08-04 14:46:52 -07:00
Alex Holliday
dfcb3b4b21
slim check snapshot model/types
2026-08-04 11:27:32 -07:00
Marcos Paulo Diniz
2e19b85a2d
docs(notifications): document Rocket.Chat
...
Refs #3821
2026-08-02 01:59:58 -03:00
Marcos Paulo Diniz
750fc9e238
feat(notifications): add Rocket.Chat provider
...
Refs #3821
2026-08-02 01:59:11 -03:00
Alexander Holliday
6e6ac5dbf6
Merge pull request #3819 from bluewave-labs/feat/client-side-presentation
...
feat: client side presentation
2026-07-31 11:52:54 -07:00
Alex Holliday
ac251c4d3f
update tests
2026-07-31 11:36:20 -07:00
Alex Holliday
8a608961e6
remove server side normalization
2026-07-31 10:31:39 -07:00
Alexander Holliday
955c400731
Merge pull request #3808 from anjupathak03/fix/tag-filtering
...
test: cover monitor tag filtering
2026-07-31 10:06:59 -07:00
Alexander Holliday
093553f9ba
Merge pull request #3818 from bluewave-labs/feat/chart-cleanup
...
feat: chart cleanup
2026-07-30 12:16:24 -07:00
Alex Holliday
6b4444038c
add tests
2026-07-30 11:54:19 -07:00
Alex Holliday
c102cd8d26
openapi schemas
2026-07-30 10:35:01 -07:00
Alexander Holliday
ff28e74aca
Merge pull request #3797 from LvckyAPI/fix-incorrect-status
...
Fix monitoring status stuck
2026-07-30 09:44:15 -07:00
Alex Holliday
0172272dc3
update tests
2026-07-29 12:33:56 -07:00
Alex Holliday
ed54fa4668
first byte to total repsonse
2026-07-29 12:30:18 -07:00
Alex Holliday
e3075318b6
denormalize resposne times
2026-07-29 10:57:20 -07:00
Alex Holliday
061da5e7ef
coerce values to 0 if null
2026-07-28 15:26:52 -07:00
Anju
a29b7037cf
test: cover monitor tag filtering
2026-07-29 03:40:11 +05:30
Alex Holliday
0cf8cfa5dc
add avg timing phases to details response
2026-07-28 11:13:35 -07:00
Iven Schlenther
04f7ef252a
Fix indentation in statusService.ts for isUnknownStatus assignment.
2026-07-27 15:07:00 +02:00
Iven Schlenther
3201653f19
Fix monitor status handling: replace isKnownStatus with isUnknownStatus for clarity and simplify initialization logic.
2026-07-27 15:03:43 +02:00
Iven Schlenther
0988a61c1d
Resolve legacy monitor status issues: handle unknown statuses, fix stuck states from old boolean values, and add regression tests. Adjust BaseChart text color for theme compatibility.
2026-07-27 15:03:41 +02:00
Alex Holliday
e0228918fb
fix tests
2026-07-24 12:28:45 -07:00
Alex Holliday
8369db5ca2
remove logger
2026-07-24 11:38:08 -07:00
Alex Holliday
49e8d26bfc
remove legacy try/catch blocks
2026-07-24 11:34:54 -07:00
Alex Holliday
c28be97fb0
update tests
2026-07-24 11:32:18 -07:00
Alex Holliday
ed36db172a
dedupe hardware stat definitions, fix tests, remove misleading null return types
2026-07-24 11:32:00 -07:00
Alex Holliday
c021d04f53
extract swtich
2026-07-24 11:09:53 -07:00