1
0
mirror of https://github.com/quay/quay.git synced 2026-10-23 09:49:06 +03:00
Files
Harish Govindarajulu dd48cd45a0 PROJQUAY-13203: fix(omr): log client-caused 4xx responses below ERROR (#7150)
docker/distribution logs "response completed with error" at ERROR for
every response that carried an error code. For a mirror registry that
includes the 404 every client receives when it probes for a blob before
uploading it (HEAD /v2/<repo>/blobs/<digest>) and when cosign or oc-mirror
looks up a ".sig" tag that does not exist. A single oc-mirror run of
eleven images produced 183 ERROR lines with no actual failure, which
buries real errors and trips any alerting on the ERROR level.

The entry is emitted inside the library, so demote it in the logrus to
slog bridge instead: when the message is the distribution error line and
http.response.status is 404 the record is logged at INFO, other 4xx at
WARN, and 5xx or entries without a usable status keep ERROR. Error
responses get no separate access-log line, so 404 stays at INFO rather
than DEBUG to keep the request and its status visible at the default
level. Quay's Python endpoints return the same 404s as
V2RegistryException responses without logging them at error level.
2026-09-17 15:28:37 -05:00
..