Statsd atom: add packageName to wakeups
Wakeup alarms in batterystats are tracked by both uid and package name.
This is quite unique in batterystats - most things are only tracked by uid.
But, to make sure statsd gets all the same data, statsd now tracks wakeup
alarms' package name too.
Bug: 115686599
Test: UidAtomTests#testWakeupAlarm
Change-Id: I1d124faf207867e0ba70f19d89ff620b73ac5636
diff --git a/cmds/statsd/src/atoms.proto b/cmds/statsd/src/atoms.proto
index 485b91f..7d8cc99 100644
--- a/cmds/statsd/src/atoms.proto
+++ b/cmds/statsd/src/atoms.proto
@@ -753,6 +753,9 @@
// Name of the wakeup alarm.
optional string tag = 2;
+
+ // Name of source package (for historical reasons, since BatteryStats tracked it).
+ optional string package_name = 3;
}
/**
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 8c7fc84..790be0a 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -9607,9 +9607,10 @@
mBatteryStatsService.noteWakupAlarm(sourcePkg, sourceUid, workSource, tag);
if (workSource != null) {
- StatsLog.write(StatsLog.WAKEUP_ALARM_OCCURRED, workSource, tag);
+ StatsLog.write(StatsLog.WAKEUP_ALARM_OCCURRED, workSource, tag, sourcePkg);
} else {
- StatsLog.write_non_chained(StatsLog.WAKEUP_ALARM_OCCURRED, sourceUid, null, tag);
+ StatsLog.write_non_chained(StatsLog.WAKEUP_ALARM_OCCURRED, sourceUid, null, tag,
+ sourcePkg);
}
}