commit | 503d25b21ee5334066adf02e029eab6088c97057 | [log] [tgz] |
---|---|---|
author | Pâris <[email protected]> | Mon Apr 17 09:05:23 2023 |
committer | Chromium LUCI CQ <[email protected]> | Mon Apr 17 09:05:23 2023 |
tree | 847b8a4caca1f56a166e9e04a337e33a3676920b | |
parent | 20fe174243ec21fcada85db51d3ce74002c4535f [diff] [blame] |
Symbolize android logcat on the gtest and instrumentation tests This adds symbolization to the logcat using the android stack tool [1] on the CQ, impacting gtest and instrumentation tests. To minimize the impact on runtime, this performs the symbolization using logcat_monitor's transform_func [2]. The implementation of stack_symbolizer.py copies the deobfuscator. The use of the pool being helpful for handling crashes/restarts, and not parallelizing the processing. This required to update the stack tool, which was not flushing its output. Trying to work around that by not necessarily returning lines in the transform_func led to jumbled logcats. Alternatively, I tried to process the whole logcat after the tests' completion, but that slowed significantly the tests, e.g.: - content_browsertests almost doubled from a typical 230 minutes (11 per shard) to around 430 minutes(20 per shard). - android_browsertests from a typical 55 minutes to 70 minutes Using the transform_func led to similar runtimes than without this patch. [1] crsrc.org/c/third_party/android_platform/development/scripts/stack [2] https://crsrc.org/c/third_party/catapult/devil/devil/android/logcat_monitor.py;drc=dc3e9bf012e68f78efc07dff48cdc023fc130739;l=40 [3] https://luci-logdog.appspot.com/logs/chromium/android/swarming/logcats/6127afedb798ec11/+/logcat_logcat_4331566088169232177_shard18_20230323T142855-UTC_FA7961A07067 Change-Id: Ia00f5e2ec4da739fa7ce6cfa18ee7800cfaa9857 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4370495 Commit-Queue: Pâris Meuleman <[email protected]> Reviewed-by: Sam Maier <[email protected]> Auto-Submit: Pâris Meuleman <[email protected]> Cr-Commit-Position: refs/heads/main@{#1131110}
diff --git a/build/android/test_runner.pydeps b/build/android/test_runner.pydeps index f81b0d49..5c1cd13 100644 --- a/build/android/test_runner.pydeps +++ b/build/android/test_runner.pydeps
@@ -209,6 +209,7 @@ pylib/results/report_results.py pylib/symbols/__init__.py pylib/symbols/deobfuscator.py +pylib/symbols/expensive_line_transformer.py pylib/symbols/stack_symbolizer.py pylib/utils/__init__.py pylib/utils/chrome_proxy_utils.py