- Ya
- 23 Agosti 2026, 07:02 UTC
- Mwandishi
- Kamo
- Ahadi ya
- 5924af3
printStackTrace() writes to stderr directly, so 186 of them survived the println sweep untouched — still unconditional, still unattributed, and now detached from the log line that described them. 166 merge into the adjacent log call as its throwable argument (log.error(msg, e)), which is where a stack trace belongs; 16 with nothing adjacent become log.error with a message; three files that had no logger got one. The level heuristic in the sweep classified by keyword, and keywords lie: - DnsVerificationService logged 'TRY_AGAIN ... transient DNS failure' at error because it contains 'failure'. The comment directly above it says 'this is a wait-state for the 60s poll loop, not a hard error'. Same for 'DNS lookup failed', which is the normal state of a record the customer has not created yet — and the watcher re-checks unresolvable domains every 60 seconds, so it was the only recurring error in the pod. - UserAuthenticationService announced NOT FOUND outcomes at error. A wrong username is what a failed login looks like, not a system fault, and the login endpoint gets bot traffic. - Two MemberController lines that say WARNING logged at error. Those are now debug or warn. SubdomainBranchesController's DNS retry error is left alone — it predates this work and is a real failure.