Skip to content

RDAP endpoints without expire info #7452

Description

@SindreSvendby

Rdap endpoints without info, causes warning message to be send each min

📑 I have found these related issues/pull requests

There are other issues talking about the line.

It can be some of those users have the same issue as me, but do not know it. They did not provide enough info for me to find out.

🛡️ Security Policy

📝 Description

The bug is a logical mistake, that causes a warning each min on the server.

https://github.com/louislam/uptime-kuma/blob/master/server/model/domain_expiry.js#L135 check if the rdap server has a expiration info and if so, returns the date. If the rdap server do not have the info it will return null. technically this is fine and correct.

On https://github.com/louislam/uptime-kuma/blob/master/server/model/domain_expiry.js#L319 it's a comment:

 // sanity check if expiry date is valid before calculating days remaining

And if so it logs and warning. This happens each min on the server.

Its problem not that common, but at least the norweagian rdap server, do not send this info:
example without info: https://rdap.norid.no/domain/vg.no (checked a lot more, was not able to find anyone with info).

Tried to check up if it was mandatory or not, but I was not able to see that it was optional or not. So I guess since it do not stand that it's mandatory it's not mandatory... but I'm not 100% sure. See
https://datatracker.ietf.org/doc/html/rfc9083#sect-4.5

I have fix this by remove the log warning from line 320-322. And moved the warning below the check on 135. This is more logical sound I think.

But It still trigger a sendNotification each min. So a proper fix is probably another place.

But If I'm going to dig deeper into this I would like some buy-in that you would like this issue to be fixed.

Do you want to surface this up to the GUI again, that it's not possible to check the domain?
Currently it looks like this:

Image

👟 Reproduction steps

Setup a domain expire check on a norwegian domain (eg. vg.no )

👀 Expected behavior

Not flood the logs with info that it can not check. But Log it once.

😓 Actual Behavior

Logs each min.

🐻 Uptime-Kuma Version

Build from master@2e4d2e62e0fb1ca1a82f6cbb6b0edddc4f987b12

💻 Operating System and Arch

Arch server

🌐 Browser

Vivaldi

🖥️ Deployment Environment

not relevant

📝 Relevant log output

mai 30 11:39:22 dev devbox[3483737]: 2026-05-30T11:39:22+02:00 [DOMAIN_EXPIRY] WARN: No valid expiry date passed to sendNotifications for <redacted>.no (expiry: Invalid Date), skipping notification
mai 30 11:39:33 dev devbox[3483737]: 2026-05-30T11:39:33+02:00 [DOMAIN_EXPIRY] WARN: No valid expiry date passed to sendNotifications for <redacted>.no (expiry: Invalid Date), skipping notification
mai 30 11:40:22 dev devbox[3483737]: 2026-05-30T11:40:22+02:00 [DOMAIN_EXPIRY] WARN: No valid expiry date passed to sendNotifications for <redacted>.no (expiry: Invalid Date), skipping notification
mai 30 11:40:33 dev devbox[3483737]: 2026-05-30T11:40:33+02:00 [DOMAIN_EXPIRY] WARN: No valid expiry date passed to sendNotifications for <redacted>.no (expiry: Invalid Date), skipping notification
mai 30 11:41:22 dev devbox[3483737]: 2026-05-30T11:41:22+02:00 [DOMAIN_EXPIRY] WARN: No valid expiry date passed to sendNotifications for <redacted>.no (expiry: Invalid Date), skipping notification
mai 30 11:41:33 dev devbox[3483737]: 2026-05-30T11:41:33+02:00 [DOMAIN_EXPIRY] WARN: No valid expiry date passed to sendNotifications for <redacted>.no (expiry: Invalid Date), skipping notification
mai 30 11:42:22 dev devbox[3483737]: 2026-05-30T11:42:22+02:00 [DOMAIN_EXPIRY] WARN: No valid expiry date passed to sendNotifications for <redacted>.no (expiry: Invalid Date), skipping notification

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions