Start with describe
Is anything actually reaching it?
- Generated hostname works, custom one does not → a hostname problem, below.
- Neither works → the load balancer or its origin, further below.
No traffic in the logs is not a diagnosis. A load balancer nobody has called looks exactly like one that is broken. If nothing is arriving, send a request yourself and look again.
A hostname that does not work
describe shows four steps per custom hostname. Work on the first one that is not done and ignore the rest — each gates the next.
Two states that look like failures and are not:
- Datum does not manage the domain’s DNS. Reported as such, set deliberately. It means “create a CNAME yourself”, not “something went wrong”. Nothing is pending.
- The generated hostname reports nothing about its DNS record. No status is published for it at all, so its absence tells you nothing either way.
An origin that cannot be reached
If the generated hostname does not serve either, the problem is between the load balancer and your origin.
The response flags in
-o wide are the most useful field when nothing else explains it — they say whether the connection to your origin failed, timed out, or found nothing healthy.
For a network service origin, check the service exists and declares the port name you used. --port takes a name like http, never a number, and Datum will not invent a service that does not exist.
A change that was accepted and never took effect
This one is easy to miss. If a load balancer reports as waiting to be published, read the message rather than waiting. A message saying it cannot be published means Datum has decided it cannot use these settings at all — the load balancer keeps serving whatever it published last, and waiting will never clear it. The usual cause is two URL origins on one route that need different Host headers. See sending paths to different origins.Nothing reports a fault and it still does not work
In rough order of likelihood:- Nothing points at it. No CNAME, no custom hostname attached. Common, and invisible in status.
- It was created moments ago. The edge is still converging. Retry the request rather than reading status again.
- The origin is refusing connections. The logs show it; status does not.
- Traffic protection is blocking real requests.
Enforceat a high sensitivity will do this.