Skip to content

Conversation

@ViniciustCosta
Copy link
Collaborator

@ViniciustCosta ViniciustCosta commented Dec 29, 2025

Handler for store_fuzzer_run_results in postprocess (#3406) was not adding the fuzzer script logs to the correct structured buckets, as expected by the fuzzer page on the UI. This PR tries to fix it by copying the data from the blob store to the expected buckets during postprocess.

b/361867455

@ViniciustCosta ViniciustCosta marked this pull request as ready for review December 29, 2025 22:41
Copy link
Contributor

@javanlacerda javanlacerda left a comment

Choose a reason for hiding this comment

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

LGTM, just some nits. Thanks for fixing it.

@jonathanmetzman
Copy link
Collaborator

Any idea if this fixes the issue how logs points to the wrong directory here: https://clusterfuzz.com/fuzzer-stats?group_by=by-fuzzer&date_start=2025-12-26&date_end=2026-01-01&fuzzer=libFuzzer&job=libfuzzer_chrome_asan (it's getting uploaded with name None)

@ViniciustCosta
Copy link
Collaborator Author

Any idea if this fixes the issue how logs points to the wrong directory here: https://clusterfuzz.com/fuzzer-stats?group_by=by-fuzzer&date_start=2025-12-26&date_end=2026-01-01&fuzzer=libFuzzer&job=libfuzzer_chrome_asan (it's getting uploaded with name None)

Not sure if I understand what is wrong there, AFAICT they are pointing to the correct dir (for instance, clicking on libFuzzer_ac3_util_fuzzer_Ac3UtilTest_ParseTotalEac3SampleCountNeverCrashes_fuzzer leads to what seems the correct logs dir).

One thing I noticed by your question is that the method to retrieve the logs bucket name depends on the FUZZER_NAME env var, which seems to be only set during utask main. So I do need to set this in postprocess for this fix to work.

@jonathanmetzman
Copy link
Collaborator

Any idea if this fixes the issue how logs points to the wrong directory here: https://clusterfuzz.com/fuzzer-stats?group_by=by-fuzzer&date_start=2025-12-26&date_end=2026-01-01&fuzzer=libFuzzer&job=libfuzzer_chrome_asan (it's getting uploaded with name None)

Not sure if I understand what is wrong there, AFAICT they are pointing to the correct dir (for instance, clicking on libFuzzer_ac3_util_fuzzer_Ac3UtilTest_ParseTotalEac3SampleCountNeverCrashes_fuzzer leads to what seems the correct logs dir).

One thing I noticed by your question is that the method to retrieve the logs bucket name depends on the FUZZER_NAME env var, which seems to be only set during utask main. So I do need to set this in postprocess for this fix to work.

Weird, it's right in the link I sent you but not this one (because it's from oss-fuzz) https://oss-fuzz.com/fuzzer-stats?project=abseil-cpp&fuzzer=afl&job=afl_asan_abseil-cpp&group_by=by-fuzzer
The link from stats page is the correct one (what the logs SHOULD be uploaded to).
But if you look at the bucket, they are uploaded with an incorrect None in the name

@ViniciustCosta
Copy link
Collaborator Author

Weird, it's right in the link I sent you but not this one (because it's from oss-fuzz) https://oss-fuzz.com/fuzzer-stats?project=abseil-cpp&fuzzer=afl&job=afl_asan_abseil-cpp&group_by=by-fuzzer The link from stats page is the correct one (what the logs SHOULD be uploaded to). But if you look at the bucket, they are uploaded with an incorrect None in the name

Ah I see, it seems an issue only in oss-fuzz. I can take a look, but this is not exactly related to this PR.
Notice that the codepath that is being changed here is only reach by blackbox fuzzers (enforced by this PR #4239)

@jonathanmetzman
Copy link
Collaborator

No worries!

@ViniciustCosta ViniciustCosta merged commit 1eea562 into master Jan 8, 2026
10 checks passed
@ViniciustCosta ViniciustCosta deleted the chore/fix_fuzzer_logs branch January 8, 2026 15:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants