Loading services/core/java/com/android/server/powerstats/BatteryTrigger.java +1 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ public final class BatteryTrigger extends PowerStatsLogTrigger { if (newBatteryLevel < mBatteryLevel) { if (DEBUG) Slog.d(TAG, "Battery level dropped. Log rail data"); logPowerStatsData(); logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP); } mBatteryLevel = newBatteryLevel; Loading services/core/java/com/android/server/powerstats/PowerStatsLogTrigger.java +2 −4 Original line number Diff line number Diff line Loading @@ -31,10 +31,8 @@ public abstract class PowerStatsLogTrigger { protected Context mContext; private PowerStatsLogger mPowerStatsLogger; protected void logPowerStatsData() { Message.obtain( mPowerStatsLogger, PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE).sendToTarget(); protected void logPowerStatsData(int msgType) { Message.obtain(mPowerStatsLogger, msgType).sendToTarget(); } public PowerStatsLogTrigger(Context context, PowerStatsLogger powerStatsLogger) { Loading services/core/java/com/android/server/powerstats/PowerStatsLogger.java +8 −3 Original line number Diff line number Diff line Loading @@ -52,7 +52,8 @@ import java.io.IOException; public final class PowerStatsLogger extends Handler { private static final String TAG = PowerStatsLogger.class.getSimpleName(); private static final boolean DEBUG = false; protected static final int MSG_LOG_TO_DATA_STORAGE = 0; protected static final int MSG_LOG_TO_DATA_STORAGE_TIMER = 0; protected static final int MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP = 1; private final PowerStatsDataStorage mPowerStatsMeterStorage; private final PowerStatsDataStorage mPowerStatsModelStorage; Loading @@ -62,8 +63,8 @@ public final class PowerStatsLogger extends Handler { @Override public void handleMessage(Message msg) { switch (msg.what) { case MSG_LOG_TO_DATA_STORAGE: if (DEBUG) Slog.d(TAG, "Logging to data storage"); case MSG_LOG_TO_DATA_STORAGE_TIMER: if (DEBUG) Slog.d(TAG, "Logging to data storage on timer"); // Log power meter data. EnergyMeasurement[] energyMeasurements = Loading @@ -78,6 +79,10 @@ public final class PowerStatsLogger extends Handler { mPowerStatsModelStorage.write( EnergyConsumerResultUtils.getProtoBytes(energyConsumerResults)); if (DEBUG) EnergyConsumerResultUtils.print(energyConsumerResults); break; case MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP: if (DEBUG) Slog.d(TAG, "Logging to data storage on battery drop"); // Log state residency data. StateResidencyResult[] stateResidencyResults = Loading services/core/java/com/android/server/powerstats/TimerTrigger.java +2 −2 Original line number Diff line number Diff line Loading @@ -29,7 +29,7 @@ public final class TimerTrigger extends PowerStatsLogTrigger { private static final String TAG = TimerTrigger.class.getSimpleName(); private static final boolean DEBUG = false; // TODO(b/166689029): Make configurable through global settings. private static final long LOG_PERIOD_MS = 60 * 1000; private static final long LOG_PERIOD_MS = 120 * 1000; private final Handler mHandler; Loading @@ -40,7 +40,7 @@ public final class TimerTrigger extends PowerStatsLogTrigger { // LOG_PERIOD_MS. mHandler.postDelayed(mLogData, LOG_PERIOD_MS); if (DEBUG) Slog.d(TAG, "Received delayed message. Log rail data"); logPowerStatsData(); logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_TIMER); } }; Loading services/tests/servicestests/src/com/android/server/powerstats/PowerStatsServiceTest.java +7 −4 Original line number Diff line number Diff line Loading @@ -78,6 +78,7 @@ public class PowerStatsServiceTest { private PowerStatsService mService; private File mDataStorageDir; private TimerTrigger mTimerTrigger; private BatteryTrigger mBatteryTrigger; private PowerStatsLogger mPowerStatsLogger; private final PowerStatsService.Injector mInjector = new PowerStatsService.Injector() { Loading Loading @@ -125,7 +126,9 @@ public class PowerStatsServiceTest { @Override BatteryTrigger createBatteryTrigger(Context context, PowerStatsLogger powerStatsLogger) { return new BatteryTrigger(context, powerStatsLogger, false /* trigger enabled */); mBatteryTrigger = new BatteryTrigger(context, powerStatsLogger, false /* trigger enabled */); return mBatteryTrigger; } @Override Loading Loading @@ -237,7 +240,7 @@ public class PowerStatsServiceTest { mService.onBootPhase(SystemService.PHASE_BOOT_COMPLETED); // Write data to on-device storage. mTimerTrigger.logPowerStatsData(); mTimerTrigger.logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_TIMER); // The above call puts a message on a handler. Wait for // it to be processed. Loading Loading @@ -278,7 +281,7 @@ public class PowerStatsServiceTest { mService.onBootPhase(SystemService.PHASE_BOOT_COMPLETED); // Write data to on-device storage. mTimerTrigger.logPowerStatsData(); mTimerTrigger.logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_TIMER); // The above call puts a message on a handler. Wait for // it to be processed. Loading Loading @@ -318,7 +321,7 @@ public class PowerStatsServiceTest { mService.onBootPhase(SystemService.PHASE_BOOT_COMPLETED); // Write data to on-device storage. mTimerTrigger.logPowerStatsData(); mBatteryTrigger.logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP); // The above call puts a message on a handler. Wait for // it to be processed. Loading Loading
services/core/java/com/android/server/powerstats/BatteryTrigger.java +1 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ public final class BatteryTrigger extends PowerStatsLogTrigger { if (newBatteryLevel < mBatteryLevel) { if (DEBUG) Slog.d(TAG, "Battery level dropped. Log rail data"); logPowerStatsData(); logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP); } mBatteryLevel = newBatteryLevel; Loading
services/core/java/com/android/server/powerstats/PowerStatsLogTrigger.java +2 −4 Original line number Diff line number Diff line Loading @@ -31,10 +31,8 @@ public abstract class PowerStatsLogTrigger { protected Context mContext; private PowerStatsLogger mPowerStatsLogger; protected void logPowerStatsData() { Message.obtain( mPowerStatsLogger, PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE).sendToTarget(); protected void logPowerStatsData(int msgType) { Message.obtain(mPowerStatsLogger, msgType).sendToTarget(); } public PowerStatsLogTrigger(Context context, PowerStatsLogger powerStatsLogger) { Loading
services/core/java/com/android/server/powerstats/PowerStatsLogger.java +8 −3 Original line number Diff line number Diff line Loading @@ -52,7 +52,8 @@ import java.io.IOException; public final class PowerStatsLogger extends Handler { private static final String TAG = PowerStatsLogger.class.getSimpleName(); private static final boolean DEBUG = false; protected static final int MSG_LOG_TO_DATA_STORAGE = 0; protected static final int MSG_LOG_TO_DATA_STORAGE_TIMER = 0; protected static final int MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP = 1; private final PowerStatsDataStorage mPowerStatsMeterStorage; private final PowerStatsDataStorage mPowerStatsModelStorage; Loading @@ -62,8 +63,8 @@ public final class PowerStatsLogger extends Handler { @Override public void handleMessage(Message msg) { switch (msg.what) { case MSG_LOG_TO_DATA_STORAGE: if (DEBUG) Slog.d(TAG, "Logging to data storage"); case MSG_LOG_TO_DATA_STORAGE_TIMER: if (DEBUG) Slog.d(TAG, "Logging to data storage on timer"); // Log power meter data. EnergyMeasurement[] energyMeasurements = Loading @@ -78,6 +79,10 @@ public final class PowerStatsLogger extends Handler { mPowerStatsModelStorage.write( EnergyConsumerResultUtils.getProtoBytes(energyConsumerResults)); if (DEBUG) EnergyConsumerResultUtils.print(energyConsumerResults); break; case MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP: if (DEBUG) Slog.d(TAG, "Logging to data storage on battery drop"); // Log state residency data. StateResidencyResult[] stateResidencyResults = Loading
services/core/java/com/android/server/powerstats/TimerTrigger.java +2 −2 Original line number Diff line number Diff line Loading @@ -29,7 +29,7 @@ public final class TimerTrigger extends PowerStatsLogTrigger { private static final String TAG = TimerTrigger.class.getSimpleName(); private static final boolean DEBUG = false; // TODO(b/166689029): Make configurable through global settings. private static final long LOG_PERIOD_MS = 60 * 1000; private static final long LOG_PERIOD_MS = 120 * 1000; private final Handler mHandler; Loading @@ -40,7 +40,7 @@ public final class TimerTrigger extends PowerStatsLogTrigger { // LOG_PERIOD_MS. mHandler.postDelayed(mLogData, LOG_PERIOD_MS); if (DEBUG) Slog.d(TAG, "Received delayed message. Log rail data"); logPowerStatsData(); logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_TIMER); } }; Loading
services/tests/servicestests/src/com/android/server/powerstats/PowerStatsServiceTest.java +7 −4 Original line number Diff line number Diff line Loading @@ -78,6 +78,7 @@ public class PowerStatsServiceTest { private PowerStatsService mService; private File mDataStorageDir; private TimerTrigger mTimerTrigger; private BatteryTrigger mBatteryTrigger; private PowerStatsLogger mPowerStatsLogger; private final PowerStatsService.Injector mInjector = new PowerStatsService.Injector() { Loading Loading @@ -125,7 +126,9 @@ public class PowerStatsServiceTest { @Override BatteryTrigger createBatteryTrigger(Context context, PowerStatsLogger powerStatsLogger) { return new BatteryTrigger(context, powerStatsLogger, false /* trigger enabled */); mBatteryTrigger = new BatteryTrigger(context, powerStatsLogger, false /* trigger enabled */); return mBatteryTrigger; } @Override Loading Loading @@ -237,7 +240,7 @@ public class PowerStatsServiceTest { mService.onBootPhase(SystemService.PHASE_BOOT_COMPLETED); // Write data to on-device storage. mTimerTrigger.logPowerStatsData(); mTimerTrigger.logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_TIMER); // The above call puts a message on a handler. Wait for // it to be processed. Loading Loading @@ -278,7 +281,7 @@ public class PowerStatsServiceTest { mService.onBootPhase(SystemService.PHASE_BOOT_COMPLETED); // Write data to on-device storage. mTimerTrigger.logPowerStatsData(); mTimerTrigger.logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_TIMER); // The above call puts a message on a handler. Wait for // it to be processed. Loading Loading @@ -318,7 +321,7 @@ public class PowerStatsServiceTest { mService.onBootPhase(SystemService.PHASE_BOOT_COMPLETED); // Write data to on-device storage. mTimerTrigger.logPowerStatsData(); mBatteryTrigger.logPowerStatsData(PowerStatsLogger.MSG_LOG_TO_DATA_STORAGE_BATTERY_DROP); // The above call puts a message on a handler. Wait for // it to be processed. Loading