userdebug: support perfetto traces as a section in incident reports
This set of patches adds a way for the perfetto command line client to
save a trace to a hardcoded location,
/data/misc/perfetto-traces/incident-trace, and call into incidentd to
start a report, which will include said trace in a new section.
This is not a long-term solution, and is structured to minimize changes
to perfetto and incidentd. The latter is currently architected in a way
where it can only pull pre-defined information out of the system, so
we're resorting to persisting the intermediate results in a hardcoded
location.
This will introduce at most two more linked files at the same time.
Bug: 130543265
Tested: manually on blueline-userdebug
Change-Id: Ie9e2f17cee24706c93d63b88ffd3ded4628bac4e
diff --git a/Android.bp b/Android.bp
index e4b1bec..6732d79 100644
--- a/Android.bp
+++ b/Android.bp
@@ -376,6 +376,7 @@
srcs: [
"src/android_internal/atrace_hal.cc",
"src/android_internal/health_hal.cc",
+ "src/android_internal/incident_service.cc",
"src/android_internal/power_stats_hal.cc",
],
shared_libs: [
@@ -383,10 +384,13 @@
"android.hardware.health@2.0",
"android.hardware.power.stats@1.0",
"libbase",
+ "libbinder",
"libhidlbase",
"libhidltransport",
"libhwbinder",
+ "libincident",
"liblog",
+ "libservices",
"libutils",
],
static_libs: [
@@ -398,6 +402,11 @@
cflags: [
"-DPERFETTO_BUILD_WITH_ANDROID",
],
+ product_variables: {
+ pdk: {
+ enabled: false,
+ },
+ },
}
// GN target: //:libperfetto_client_experimental