perfetto: add support for excluded chrome events
BUG=None
TEST=record_cros_trace --ssh sona -d "chrome.*" chrome.base
Change-Id: I99c24a2b1ec2682b0d643088c725f0380ed64f69
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/graphics/+/3425738
Tested-by: John Bates <jbates@chromium.org>
Auto-Submit: John Bates <jbates@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Commit-Queue: John Bates <jbates@chromium.org>
diff --git a/src/perfetto/record_cros_trace b/src/perfetto/record_cros_trace
index 4140e42..33bc6cd 100755
--- a/src/perfetto/record_cros_trace
+++ b/src/perfetto/record_cros_trace
@@ -42,6 +42,7 @@
categories=()
chrome_categories=''
disabled_categories=()
+chrome_disabled_categories=''
now=$(date +"%Y-%m-%d_%H-%M-%S")
output_file=''
config_filename="perfetto-${RANDOM}.config"
@@ -79,7 +80,12 @@
incremental_update_period_ms="${args[${i}]}"
elif [[ "${args[${i}]}" = "-d" ]]; then
i=$((i+1))
- disabled_categories+=("${args[${i}]}")
+ cat="${args[${i}]}"
+ if [[ "${cat}" == chrome.* ]]; then
+ chrome_disabled_categories+="\\\"${cat#"chrome."}\\\","
+ else
+ disabled_categories+=("${cat}")
+ fi
elif [[ "${args[${i}]}" = "--write-args" ]]; then
i=$((i+1))
output_args_file="${args[${i}]}"
@@ -101,6 +107,7 @@
# Strip trailing comma:
chrome_categories="${chrome_categories%","}"
+chrome_disabled_categories="${chrome_disabled_categories%","}"
target_name="local"
[[ -z "${dut}" ]] || target_name="${dut}"
@@ -310,7 +317,9 @@
name: "org.chromium.trace_event"
chrome_config {
trace_config: "{\"record_mode\":\"record-continuously\",\
-\"included_categories\":[${chrome_categories}],\"memory_dump_config\":{}}"
+\"included_categories\":[${chrome_categories}],\
+\"excluded_categories\":[${chrome_disabled_categories}],\
+\"memory_dump_config\":{}}"
privacy_filtering_enabled: false
}
}
@@ -320,7 +329,9 @@
name: "org.chromium.trace_metadata"
chrome_config {
trace_config: "{\"record_mode\":\"record-continuously\",\
-\"included_categories\":[${chrome_categories}],\"memory_dump_config\":{}}"
+\"included_categories\":[${chrome_categories}],\
+\"excluded_categories\":[${chrome_disabled_categories}],\
+\"memory_dump_config\":{}}"
privacy_filtering_enabled: false
}
}