Skip to content

Use compact logging only for List* RPCs#9919

Merged
openshift-merge-bot[bot] merged 1 commit into
cri-o:mainfrom
Nordix:fix/revert-d25f3a5
May 8, 2026
Merged

Use compact logging only for List* RPCs#9919
openshift-merge-bot[bot] merged 1 commit into
cri-o:mainfrom
Nordix:fix/revert-d25f3a5

Conversation

@fmuyassarov

@fmuyassarov fmuyassarov commented May 4, 2026

Copy link
Copy Markdown
Contributor

/kind cleanup

What this PR does / why we need it:

Address regression when handling crictl requests.

Which issue(s) this PR fixes:

Fixes: #9894

Special notes for your reviewer:

Does this PR introduce a user-facing change?

Reduced the verbosity of debug logs for List* RPC calls to improve performance

Summary by CodeRabbit

  • Chores
    • Improved debug logging for list-style RPCs: request and response data are now logged more compactly for clearer diagnostics.
    • Maintained existing, detailed logging for non-list operations; metrics, tracing, and error handling behavior remain unchanged.

@fmuyassarov fmuyassarov requested a review from mrunalp as a code owner May 4, 2026 08:44
@openshift-ci openshift-ci Bot added release-note-none Denotes a PR that doesn't merit a release note. dco-signoff: no Indicates the PR's author has not DCO signed all their commits. kind/bug Categorizes issue or PR as related to a bug. labels May 4, 2026
@openshift-ci openshift-ci Bot requested review from QiWang19 and bitoku May 4, 2026 08:44
@openshift-ci openshift-ci Bot added the kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. label May 4, 2026
@openshift-ci

openshift-ci Bot commented May 4, 2026

Copy link
Copy Markdown
Contributor

Hi @fmuyassarov. Thanks for your PR.

I'm waiting for a cri-o member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-ci openshift-ci Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label May 4, 2026
@coderabbitai

coderabbitai Bot commented May 4, 2026

Copy link
Copy Markdown

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The PR updates the UnaryInterceptor logging to detect RPCs whose operation name starts with "List" and logs their Request/Response using compact %#v formatting; other RPCs keep the original type-aware %T: %+v debug format. No public API changes.

Changes

Debug Logging Format for List RPCs*

Layer / File(s) Summary
Imports
internal/log/interceptors/interceptors.go
Adds strings import to enable operation name prefix checks.
Detection
internal/log/interceptors/interceptors.go
Computes isList via strings.HasPrefix(operation, "List") inside UnaryInterceptor.
Request Logging
internal/log/interceptors/interceptors.go
If isList, logs Request with %#v; otherwise retains %T: %+v.
Response Logging
internal/log/interceptors/interceptors.go
If isList, logs Response with %#v; otherwise retains %T: %+v.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Suggested labels

lgtm

Suggested reviewers

  • bitoku
  • saschagrunert

Poem

I dug through logs both wide and deep,
Found List* entries causing a heap,
Switched them to compact, neat and sly,
Now tails of bytes no longer fly—🐇✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed The code changes implement the solution to issue #9894 by using %#v for List* RPCs to reduce log verbosity while preserving detailed formatting for other RPCs, directly addressing the performance regression.
Out of Scope Changes check ✅ Passed All changes are scoped to the interceptors.go file and directly address the performance regression by modifying log formatting for List* RPC calls as required by issue #9894.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and concisely describes the main change: using compact logging (%#v) specifically for List* RPCs while preserving detailed logging for other operations.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@saschagrunert

Copy link
Copy Markdown
Member

@fmuyassarov thank you for the PR! Do you mind signing off your commit?

@bitoku PTAL

@saschagrunert

Copy link
Copy Markdown
Member

/ok-to-test

@openshift-ci openshift-ci Bot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels May 4, 2026
@fmuyassarov fmuyassarov force-pushed the fix/revert-d25f3a5 branch from abcf133 to 599a575 Compare May 4, 2026 08:48
@openshift-ci openshift-ci Bot added dco-signoff: yes Indicates the PR's author has DCO signed all their commits. and removed dco-signoff: no Indicates the PR's author has not DCO signed all their commits. labels May 4, 2026
@fmuyassarov

Copy link
Copy Markdown
Contributor Author

@fmuyassarov thank you for the PR! Do you mind signing off your commit?

@bitoku PTAL

Ops, my bad. Should be signed now :)

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
internal/log/interceptors/interceptors.go (1)

65-65: ⚡ Quick win

LGTM — correct revert; consider adding a short comment capturing the why.

The switch back to %#v is the right fix. With google.golang.org/protobuf-generated types, the %+v verb triggers the prototext serializer (an expensive, allocation-heavy path), whereas %#v falls through to Go's standard reflection formatter, matching the fast pre-v1.35.0 behaviour confirmed by issue #9894.

Because the next engineer who wants to "clean up the log format" may accidentally reproduce this regression, a one-line comment would prevent future churn:

💬 Suggested protective comment
-		log.Debugf(newCtx, "Request: %#v", req)
+		// Use %#v (Go-syntax representation) rather than %+v/%T:%+v.
+		// With google.golang.org/protobuf generated types, %+v triggers the
+		// expensive prototext serializer and can cause deadline-exceeded under load.
+		log.Debugf(newCtx, "Request: %#v", req)
-		log.Debugf(newCtx, "Response: %#v", resp)
+		// Same rationale as the Request log above.
+		log.Debugf(newCtx, "Response: %#v", resp)

Also applies to: 77-77

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@internal/log/interceptors/interceptors.go` at line 65, Add a one-line comment
above the log.Debugf call in interceptors.go (the call to log.Debugf(newCtx,
"Request: %#v", req)) explaining why the %#v verb is used instead of %+v: note
that %+v triggers the protobuf prototext serializer for
google.golang.org/protobuf-generated types (causing expensive allocations and
regressions) while %#v falls back to Go's standard formatter and preserves the
pre-v1.35.0 performance; keep the comment short and reference the protobuf/issue
behavior to prevent future accidental reversion.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@internal/log/interceptors/interceptors.go`:
- Line 65: Add a one-line comment above the log.Debugf call in interceptors.go
(the call to log.Debugf(newCtx, "Request: %#v", req)) explaining why the %#v
verb is used instead of %+v: note that %+v triggers the protobuf prototext
serializer for google.golang.org/protobuf-generated types (causing expensive
allocations and regressions) while %#v falls back to Go's standard formatter and
preserves the pre-v1.35.0 performance; keep the comment short and reference the
protobuf/issue behavior to prevent future accidental reversion.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: feee526b-15f5-452b-8783-fc13c187ff71

📥 Commits

Reviewing files that changed from the base of the PR and between ea80b28 and abcf133.

📒 Files selected for processing (3)
  • internal/log/interceptors/interceptors.go
  • test/ctr.bats
  • test/logs.bats
💤 Files with no reviewable changes (1)
  • test/ctr.bats

@codecov

codecov Bot commented May 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 67.49%. Comparing base (ea80b28) to head (7ffa9b6).
⚠️ Report is 15 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #9919      +/-   ##
==========================================
- Coverage   67.59%   67.49%   -0.11%     
==========================================
  Files         215      215              
  Lines       29678    29708      +30     
==========================================
- Hits        20061    20050      -11     
- Misses       7910     7958      +48     
+ Partials     1707     1700       -7     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@fmuyassarov

fmuyassarov commented May 4, 2026

Copy link
Copy Markdown
Contributor Author

Seeing issues in most of the prow job failures like:

ERROR: (gcloud.compute.instances.create) Could not fetch resource:
 - Required 'compute.images.useReadOnly' permission for 'projects/openshift-node-devel/global/images/crio-setup-1773189301'

Seems somewhat unrelated to the change itself but perhaps someone can confirm it

@haircommander

Copy link
Copy Markdown
Member

yeah the failures aren't related
/retest
(I'll force merge after a bit)
/lgtm
/approve

thanks for the research and fix!

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label May 4, 2026
@openshift-ci

openshift-ci Bot commented May 4, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fmuyassarov, haircommander

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 4, 2026
@bitoku

bitoku commented May 5, 2026

Copy link
Copy Markdown
Contributor

/hold

Thanks for the PR! However, I think we should fix this a bit differently.

As mentioned in #9501, using %#v hides important information, which makes debugging much harder. Instead, I think we should suppress logs (or use %#v) only for certain RPCs, like List*. What do you think?

(Also, this change qualifies for a release note.)

@openshift-ci openshift-ci Bot added do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. and removed lgtm Indicates that a PR is ready to be merged. labels May 5, 2026
@fmuyassarov fmuyassarov force-pushed the fix/revert-d25f3a5 branch from 621e9e3 to e2be80c Compare May 5, 2026 15:36
@fmuyassarov

Copy link
Copy Markdown
Contributor Author

/hold

Thanks for the PR! However, I think we should fix this a bit differently.

As mentioned in #9501, using %#v hides important information, which makes debugging much harder. Instead, I think we should suppress logs (or use %#v) only for certain RPCs, like List*. What do you think?

(Also, this change qualifies for a release note.)

Thanks for the review @bitoku . You have a point, it would be too expensive to sacrifice the debugging. Can you please take a look once more. I've updated it now to keep %+v for single-item RPC and %#v only for List* RPC.

@fmuyassarov

Copy link
Copy Markdown
Contributor Author

If looks good, I will squash the commits and update the title, etc.

@bitoku

bitoku commented May 6, 2026

Copy link
Copy Markdown
Contributor

/release-note-edit

Reduced the verbosity of debug logs for List* RPC calls to improve performance

@openshift-ci openshift-ci Bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed release-note-none Denotes a PR that doesn't merit a release note. labels May 6, 2026
@bitoku

bitoku commented May 6, 2026

Copy link
Copy Markdown
Contributor

@fmuyassarov can you run make lint?

@bitoku

bitoku commented May 6, 2026

Copy link
Copy Markdown
Contributor

Could you provide the fixed logs?

@fmuyassarov

Copy link
Copy Markdown
Contributor Author

Could you provide the fixed logs?

Sure, here is a small snippet

May 06 10:28:35.856932 eseldb12u01 crio[2191869]: time="2026-05-06T10:28:35.855795713Z" level=debug msg="Response: *v1.VersionResponse: version:\"0.1.0\" runtime_name:\"cri-o\" runtime_version:\"1.36.0\" runtime_api_version:\"v1\"" file="interceptors/interceptors.go:88" id=2e569e41-dbd6-444e-8cad-fb5358c773ff name=/runtime.v1.RuntimeService/Version
May 06 10:28:35.856932 eseldb12u01 crio[2191869]: time="2026-05-06T10:28:35.856725356Z" level=debug msg="Response: *v1.StatusResponse: status:{conditions:{type:\"RuntimeReady\" status:true} conditions:{type:\"NetworkReady\" status:true}} runtime_handlers:{name:\"crun\" features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{name:\"runc\" features:{recursive_read_only_mounts:true user_namespaces:true}} features:{supplemental_groups_policy:true}" file="interceptors/interceptors.go:88" id=134faf3f-598e-470c-91ff-ffa128a5ab6e name=/runtime.v1.RuntimeService/Status
May 06 10:29:05.861052 eseldb12u01 crio[2191869]: time="2026-05-06T10:29:05.859884073Z" level=debug msg="Response: *v1.VersionResponse: version:\"0.1.0\" runtime_name:\"cri-o\" runtime_version:\"1.36.0\" runtime_api_version:\"v1\"" file="interceptors/interceptors.go:88" id=a0ec879f-1c43-444e-8913-4b2e966f83ef name=/runtime.v1.RuntimeService/Version
May 06 10:29:05.861052 eseldb12u01 crio[2191869]: time="2026-05-06T10:29:05.860776842Z" level=debug msg="Response: *v1.StatusResponse: status:{conditions:{type:\"RuntimeReady\" status:true} conditions:{type:\"NetworkReady\" status:true}} runtime_handlers:{name:\"crun\" features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{name:\"runc\" features:{recursive_read_only_mounts:true user_namespaces:true}} features:{supplemental_groups_policy:true}" file="interceptors/interceptors.go:88" id=2cd859b5-f874-4d56-a03f-69807923de9d name=/runtime.v1.RuntimeService/Status
May 06 10:29:35.866015 eseldb12u01 crio[2191869]: time="2026-05-06T10:29:35.865009281Z" level=debug msg="Response: *v1.VersionResponse: version:\"0.1.0\" runtime_name:\"cri-o\" runtime_version:\"1.36.0\" runtime_api_version:\"v1\"" file="interceptors/interceptors.go:88" id=2cdda1c4-d815-4023-8c21-c2ec8d00ee05 name=/runtime.v1.RuntimeService/Version
May 06 10:29:35.866331 eseldb12u01 crio[2191869]: time="2026-05-06T10:29:35.86624442Z" level=debug msg="Response: *v1.StatusResponse: status:{conditions:{type:\"RuntimeReady\" status:true} conditions:{type:\"NetworkReady\" status:true}} runtime_handlers:{name:\"crun\" features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{name:\"runc\" features:{recursive_read_only_mounts:true user_namespaces:true}} features:{supplemental_groups_policy:true}" file="interceptors/interceptors.go:88" id=ba6159ec-3d62-42fa-ab53-a3d65a93e294 name=/runtime.v1.RuntimeService/Status
May 06 10:30:05.872638 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:05.871768107Z" level=debug msg="Response: *v1.VersionResponse: version:\"0.1.0\" runtime_name:\"cri-o\" runtime_version:\"1.36.0\" runtime_api_version:\"v1\"" file="interceptors/interceptors.go:88" id=684f7036-f66d-4ae0-a0b5-5d98dd78066c name=/runtime.v1.RuntimeService/Version
May 06 10:30:05.872912 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:05.872822016Z" level=debug msg="Response: *v1.StatusResponse: status:{conditions:{type:\"RuntimeReady\" status:true} conditions:{type:\"NetworkReady\" status:true}} runtime_handlers:{name:\"crun\" features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{name:\"runc\" features:{recursive_read_only_mounts:true user_namespaces:true}} features:{supplemental_groups_policy:true}" file="interceptors/interceptors.go:88" id=92619423-d6ee-460f-a29a-2dc5bee93db8 name=/runtime.v1.RuntimeService/Status
May 06 10:30:13.944735 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:13.944163381Z" level=debug msg="Response: *v1.VersionResponse: version:\"0.1.0\" runtime_name:\"cri-o\" runtime_version:\"1.36.0\" runtime_api_version:\"v1\"" file="interceptors/interceptors.go:88" id=43b454e1-605d-4acf-aa8a-851621382f29 name=/runtime.v1.RuntimeService/Version
May 06 10:30:13.945945 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:13.945793863Z" level=debug msg="Request: &v1.ListContainerStatsRequest{state:impl.MessageState{NoUnkeyedLiterals:pragma.NoUnkeyedLiterals{}, DoNotCompare:pragma.DoNotCompare{}, DoNotCopy:pragma.DoNotCopy{}, atomicMessageInfo:(*impl.MessageInfo)(0xe6dc3d6fb08)}, Filter:(*v1.ContainerStatsFilter)(0xe6dcba85220), unknownFields:[]uint8(nil), sizeCache:0}" file="interceptors/interceptors.go:71" id=8313f731-fd3c-4835-87a9-a2c8c7402d41 name=/runtime.v1.RuntimeService/ListContainerStats
May 06 10:30:13.946115 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:13.9460444Z" level=debug msg="No filters were applied, returning full container list" file="server/container_list.go:67" id=8313f731-fd3c-4835-87a9-a2c8c7402d41 name=/runtime.v1.RuntimeService/ListContainerStats
May 06 10:30:13.962186 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:13.962127154Z" level=debug msg="Response: &v1.ListContainerStatsResponse{state:impl.MessageState{NoUnkeyedLiterals:pragma.NoUnkeyedLiterals{}, DoNotCompare:pragma.DoNotCompare{}, DoNotCopy:pragma.DoNotCopy{}, atomicMessageInfo:(*impl.MessageInfo)(nil)}, Stats:[]*v1.ContainerStats{(*v1.ContainerStats)(0xe6dcc08ea20), (*v1.ContainerStats)(0xe6dc770a600), (*v1.ContainerStats)(0xe6dc770bb60), (*v1.ContainerStats)(0xe6dcad2eba0), (*v1.ContainerStats)(0xe6dcad2f920), (*v1.ContainerStats)(0xe6dca800240), (*v1.ContainerStats)(0xe6dca801020), (*v1.ContainerStats)(0xe6dca801e00), (*v1.ContainerStats)(0xe6dc6250d80), (*v1.ContainerStats)(0xe6dc6251b00), (*v1.ContainerStats)(0xe6dccc1ef60), (*v1.ContainerStats)(0xe6dc9fac840), (*v1.ContainerStats)(0xe6dc9fad5c0), (*v1.ContainerStats)(0xe6dcafeca80), (*v1.ContainerStats)(0xe6dcbeaa000), (*v1.ContainerStats)(0xe6dcbeaad80), (*v1.ContainerStats)(0xe6dcbeabb60), (*v1.ContainerStats)(0xe6dc89d5620), (*v1.ContainerStats)(0xe6dc911d740)}, unknownFields:[]uint8(nil), sizeCache:0}" file="interceptors/interceptors.go:86" id=8313f731-fd3c-4835-87a9-a2c8c7402d41 name=/runtime.v1.RuntimeService/ListContainerStats
May 06 10:30:14.965270 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:14.964919347Z" level=debug msg="Request: &v1.ListContainerStatsRequest{state:impl.MessageState{NoUnkeyedLiterals:pragma.NoUnkeyedLiterals{}, DoNotCompare:pragma.DoNotCompare{}, DoNotCopy:pragma.DoNotCopy{}, atomicMessageInfo:(*impl.MessageInfo)(0xe6dc3d6fb08)}, Filter:(*v1.ContainerStatsFilter)(0xe6dc833e2d0), unknownFields:[]uint8(nil), sizeCache:0}" file="interceptors/interceptors.go:71" id=50880790-9efa-4598-a2e7-7a11d77a5d9d name=/runtime.v1.RuntimeService/ListContainerStats
May 06 10:30:14.965270 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:14.965169765Z" level=debug msg="No filters were applied, returning full container list" file="server/container_list.go:67" id=50880790-9efa-4598-a2e7-7a11d77a5d9d name=/runtime.v1.RuntimeService/ListContainerStats
May 06 10:30:14.980238 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:14.980181055Z" level=debug msg="Response: &v1.ListContainerStatsResponse{state:impl.MessageState{NoUnkeyedLiterals:pragma.NoUnkeyedLiterals{}, DoNotCompare:pragma.DoNotCompare{}, DoNotCopy:pragma.DoNotCopy{}, atomicMessageInfo:(*impl.MessageInfo)(nil)}, Stats:[]*v1.ContainerStats{(*v1.ContainerStats)(0xe6dcb4d10e0), (*v1.ContainerStats)(0xe6dcb4d1e60), (*v1.ContainerStats)(0xe6dc7919800), (*v1.ContainerStats)(0xe6dc8ac8120), (*v1.ContainerStats)(0xe6dc648c3c0), (*v1.ContainerStats)(0xe6dc4c65980), (*v1.ContainerStats)(0xe6dc5b283c0), (*v1.ContainerStats)(0xe6dc7312180), (*v1.ContainerStats)(0xe6dc50223c0), (*v1.ContainerStats)(0xe6dcbe9ea80), (*v1.ContainerStats)(0xe6dc34632c0), (*v1.ContainerStats)(0xe6dc428a540), (*v1.ContainerStats)(0xe6dc8f10840), (*v1.ContainerStats)(0xe6dc2f7c660), (*v1.ContainerStats)(0xe6dc51cb200), (*v1.ContainerStats)(0xe6dc45e4ae0), (*v1.ContainerStats)(0xe6dc540b800), (*v1.ContainerStats)(0xe6dc5812f00), (*v1.ContainerStats)(0xe6dc5611740)}, unknownFields:[]uint8(nil), sizeCache:0}" file="interceptors/interceptors.go:86" id=50880790-9efa-4598-a2e7-7a11d77a5d9d name=/runtime.v1.RuntimeService/ListContainerStats
May 06 10:30:35.879484 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:35.87845246Z" level=debug msg="Response: *v1.VersionResponse: version:\"0.1.0\" runtime_name:\"cri-o\" runtime_version:\"1.36.0\" runtime_api_version:\"v1\"" file="interceptors/interceptors.go:88" id=85e06270-0277-4876-93f5-4df910d6fbd3 name=/runtime.v1.RuntimeService/Version
May 06 10:30:35.880364 eseldb12u01 crio[2191869]: time="2026-05-06T10:30:35.88013621Z" level=debug msg="Response: *v1.StatusResponse: status:{conditions:{type:\"RuntimeReady\" status:true} conditions:{type:\"NetworkReady\" status:true}} runtime_handlers:{name:\"crun\" features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{name:\"runc\" features:{recursive_read_only_mounts:true user_namespaces:true}} features:{supplemental_groups_policy:true}" file="interceptors/interceptors.go:88" id=aff26243-26fc-420c-bed6-e3225e120bb2 name=/runtime.v1.RuntimeService/Status
May 06 10:31:05.884681 eseldb12u01 crio[2191869]: time="2026-05-06T10:31:05.884006763Z" level=debug msg="Response: *v1.VersionResponse: version:\"0.1.0\" runtime_name:\"cri-o\" runtime_version:\"1.36.0\" runtime_api_version:\"v1\"" file="interceptors/interceptors.go:88" id=b1f63b15-af05-44b9-a0e6-2927f2abca58 name=/runtime.v1.RuntimeService/Version
May 06 10:31:05.885678 eseldb12u01 crio[2191869]: time="2026-05-06T10:31:05.885433928Z" level=debug msg="Response: *v1.StatusResponse: status:{conditions:{type:\"RuntimeReady\" status:true} conditions:{type:\"NetworkReady\" status:true}} runtime_handlers:{name:\"crun\" features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{features:{recursive_read_only_mounts:true user_namespaces:true}} runtime_handlers:{name:\"runc\" features:{recursive_read_only_mounts:true user_namespaces:true}} features:{supplemental_groups_policy:true}" file="interceptors/interceptors.go:88" id=890a62e4-4633-437d-b47b-675c3c788b1c name=/runtime.v1.RuntimeService/Status



List* RPCs can return large payloads that, when formatted with %+v,
produce large  protobuf text log messages causing gRPC deadline
exceeded errors (see issue cri-o#9894).

Signed-off-by: Feruzjon Muyassarov <feruzjon.muyassarov@est.tech>
@fmuyassarov fmuyassarov force-pushed the fix/revert-d25f3a5 branch from e2be80c to 7ffa9b6 Compare May 6, 2026 10:55
@fmuyassarov

Copy link
Copy Markdown
Contributor Author

@fmuyassarov can you run make lint?

Thanks done. I've also updated & squashed the commits.

@fmuyassarov fmuyassarov changed the title Revert "Update log formatting in interceptors to use %+v for better r… Use compact logging only for List* RPCs May 6, 2026
@bitoku

bitoku commented May 7, 2026

Copy link
Copy Markdown
Contributor

/lgtm
/unhold
thanks!

@openshift-ci openshift-ci Bot added lgtm Indicates that a PR is ready to be merged. and removed do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. labels May 7, 2026
@bitoku

bitoku commented May 7, 2026

Copy link
Copy Markdown
Contributor

/retest

1 similar comment
@bitoku

bitoku commented May 7, 2026

Copy link
Copy Markdown
Contributor

/retest

@fmuyassarov

Copy link
Copy Markdown
Contributor Author

@fmuyassarov: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:
Test name Commit Details Required Rerun command
ci/prow/e2e-gcp-ovn 7ffa9b6 link true /test e2e-gcp-ovn

Full PR test history. Your PR dashboard.
Details

this is somewhat similar to the previosly failed tests, which doesn't seem related to the actual changes

level=info msg=Manifests created in: /tmp/installer/cluster-api, /tmp/installer/manifests and /tmp/installer/openshift
error: unable to read image registry.build04.ci.openshift.org/ci-op-lmh9r8fc/release@sha256:44e6675517462f170c8b9c909b9db5e629fa3e23cd6fbc045d8e41d968e2197e: unable to retrieve source image registry.build04.ci.openshift.org/ci-op-lmh9r8fc/release@sha256:44e6675517462f170c8b9c909b9db5e629fa3e23cd6fbc045d8e41d968e2197e manifest #1 from manifest list: received unexpected HTTP status: 504 Gateway Time-out

@fmuyassarov

Copy link
Copy Markdown
Contributor Author

@haircommander would you mind to help to get this merged if it LGTY ?

@fmuyassarov

Copy link
Copy Markdown
Contributor Author

/test e2e-gcp-ovn

@bitoku

bitoku commented May 8, 2026

Copy link
Copy Markdown
Contributor

/retest

@fmuyassarov

Copy link
Copy Markdown
Contributor Author

/test ci-rhel-e2e

@openshift-merge-bot openshift-merge-bot Bot merged commit df70563 into cri-o:main May 8, 2026
70 of 72 checks passed
@fmuyassarov fmuyassarov deleted the fix/revert-d25f3a5 branch May 8, 2026 07:35
@bitoku

bitoku commented May 12, 2026

Copy link
Copy Markdown
Contributor

/cherry-pick release-1.36

@openshift-cherrypick-robot

Copy link
Copy Markdown

@bitoku: new pull request created: #9951

Details

In response to this:

/cherry-pick release-1.36

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@fmuyassarov

Copy link
Copy Markdown
Contributor Author

/cherry-pick release-1.36

Thank you @bitoku

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. kind/bug Categorizes issue or PR as related to a bug. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm Indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note Denotes a PR that will be considered when it comes time to generate release notes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CRI-O v1.35.0 regression when handling crictl request

5 participants