ob status does not report a route domain that has no certificate
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
Start from the ob status certificate checks and proxy.CertExpiries, which the issue says currently reads only domain.main; trace how applied resolvers, ACME stores, and terminating route domains reach that code. Check route discovery output under /etc/traefik/dynamic if the existing route data is insufficient. Done when status reports missing or renewal-floor certificates for route domains, counts SAN and wildcard coverage, and avoids immediate divergence while issuance is pending.
由索引模型根据 Issue 内容生成。
描述
What happens
ob status reports a healthy proxy when a terminating route's domain has no certificate from the resolver that should issue it. If the configured resolver never obtains a certificate for a domain (for example, the HTTP-01 challenge is blocked or the DNS-01 token is wrong), Traefik serves its default self-signed certificate for that domain. Status does not mention the domain at all.
Status only judges certificates that exist in the ACME stores. A domain with no renewable certificate does not appear there, so it raises no issue and does not set Diverged.
Before #236 this case was sometimes caught by accident. If a leftover resolver key still held an old certificate for the domain, that certificate was eventually flagged as overdue. Since #236, a leftover certificate is marked orphaned and never flagged, so nothing reports the missing one.
Expected
For each domain that a terminating route serves, status checks that a resolver in the applied static configuration holds a certificate for it in the store it writes, and that the certificate is outside the renewal floor. A route domain with no such certificate is reported as an issue, and status diverges. Wildcard routes are covered by a matching wildcard certificate from the wildcard resolver.
Notes
- The route domains come from the application's routes, which status already knows, or from the discovery controller's output in
/etc/traefik/dynamic. - A certificate's SANs should count as well as
domain.main.proxy.CertExpiriescurrently extracts onlydomain.main, so a domain covered only through a SAN would be reported as missing. - A route whose certificate is still being issued right after its first deploy should not report divergence immediately. A short grace period, or reporting it as pending, avoids a false alarm.
Reproduce
- Deploy an application with a terminating route for a domain whose ACME challenge cannot succeed, for example a domain whose DNS does not point at the host.
- Wait for Traefik's issuance attempt to fail. The domain then serves Traefik's default certificate.
- Run
ob status. It reports the proxy as in sync and exits zero.
- 主要语言
- Go
- 星标
- 4
- 派生
- 0
- 平均合并
- 36 分钟
- 30 天内合并 PR
- 13
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
labstack/onebox 的其他 Issue
-
bug
难度 1/5 1 小时以内 新手友好度 80/100
维护者通常 1 天内回复
-
bug
难度 1/5 1 小时以内 新手友好度 85/100
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 55/100
维护者通常 1 天内回复
-
enhancement
难度 4/5 3-5 天 新手友好度 30/100
维护者通常 1 天内回复
-
bug
难度 3/5 1-2 天 新手友好度 65/100
维护者通常 1 天内回复
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 72/100
open-feature/flagd-schemas#237 ·
-
enhancement
难度 2/5 1-3 小时 新手友好度 72/100
superplanehq/superplane#9234 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 65/100
betterleaks/betterleaks#469 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
prime-radiant-inc/evener#5901 ·
维护者通常 1 天内回复