diff options
37 files changed, 300 insertions, 254 deletions
diff --git a/cmds/statsd/src/atoms.proto b/cmds/statsd/src/atoms.proto index 12058cae1a2a..572ae1095926 100644 --- a/cmds/statsd/src/atoms.proto +++ b/cmds/statsd/src/atoms.proto @@ -381,8 +381,8 @@ message Atom { NotificationReported notification_reported = 244; NotificationPanelReported notification_panel_reported = 245; NotificationChannelModified notification_panel_modified = 246; - IntegrityCheckResultReported integrity_check_result_reported = 247; - IntegrityRulesPushed integrity_rules_pushed = 248; + IntegrityCheckResultReported integrity_check_result_reported = 247 [(module) = "framework"]; + IntegrityRulesPushed integrity_rules_pushed = 248 [(module) = "framework"]; CellBroadcastMessageReported cb_message_reported = 249 [(module) = "cellbroadcast"]; CellBroadcastMessageError cb_message_error = diff --git a/core/java/android/app/admin/DevicePolicyEventLogger.java b/core/java/android/app/admin/DevicePolicyEventLogger.java index 4c0e176c519e..bbc0bdfa6d7d 100644 --- a/core/java/android/app/admin/DevicePolicyEventLogger.java +++ b/core/java/android/app/admin/DevicePolicyEventLogger.java @@ -19,10 +19,9 @@ package android.app.admin; import android.annotation.Nullable; import android.content.ComponentName; import android.stats.devicepolicy.nano.StringList; -import android.util.StatsLog; import com.android.framework.protobuf.nano.MessageNano; -import com.android.internal.util.Preconditions; +import com.android.internal.util.FrameworkStatsLog; import java.util.Arrays; import java.util.Objects; @@ -197,8 +196,8 @@ public class DevicePolicyEventLogger { */ public void write() { byte[] bytes = stringArrayValueToBytes(mStringArrayValue); - StatsLog.write(StatsLog.DEVICE_POLICY_EVENT, mEventId, mAdminPackageName, mIntValue, - mBooleanValue, mTimePeriodMs, bytes); + FrameworkStatsLog.write(FrameworkStatsLog.DEVICE_POLICY_EVENT, mEventId, mAdminPackageName, + mIntValue, mBooleanValue, mTimePeriodMs, bytes); } /** diff --git a/core/java/android/service/contentcapture/ContentCaptureService.java b/core/java/android/service/contentcapture/ContentCaptureService.java index 5a8521fead87..707426a22889 100644 --- a/core/java/android/service/contentcapture/ContentCaptureService.java +++ b/core/java/android/service/contentcapture/ContentCaptureService.java @@ -42,7 +42,6 @@ import android.os.RemoteException; import android.util.Log; import android.util.Slog; import android.util.SparseIntArray; -import android.util.StatsLog; import android.view.contentcapture.ContentCaptureCondition; import android.view.contentcapture.ContentCaptureContext; import android.view.contentcapture.ContentCaptureEvent; @@ -55,6 +54,7 @@ import android.view.contentcapture.IContentCaptureDirectManager; import android.view.contentcapture.MainContentCaptureSession; import com.android.internal.os.IResultReceiver; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.Preconditions; import java.io.FileDescriptor; @@ -594,7 +594,7 @@ public abstract class ContentCaptureService extends Service { + rightUid); long now = System.currentTimeMillis(); if (now - mLastCallerMismatchLog > mCallerMismatchTimeout) { - StatsLog.write(StatsLog.CONTENT_CAPTURE_CALLER_MISMATCH_REPORTED, + FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_CALLER_MISMATCH_REPORTED, getPackageManager().getNameForUid(rightUid), getPackageManager().getNameForUid(uid)); mLastCallerMismatchLog = now; diff --git a/core/java/android/util/StatsLog.java b/core/java/android/util/StatsLog.java index 8635340397b4..cc922d398969 100644 --- a/core/java/android/util/StatsLog.java +++ b/core/java/android/util/StatsLog.java @@ -28,6 +28,8 @@ import android.os.IStatsd; import android.os.RemoteException; import android.os.ServiceManager; +import com.android.internal.util.FrameworkStatsLog; + /** * StatsLog provides an API for developers to send events to statsd. The events can be used to * define custom metrics inside statsd. @@ -60,7 +62,7 @@ public final class StatsLog extends StatsLogInternal { return false; } service.sendAppBreadcrumbAtom(label, - StatsLog.APP_BREADCRUMB_REPORTED__STATE__START); + FrameworkStatsLog.APP_BREADCRUMB_REPORTED__STATE__START); return true; } catch (RemoteException e) { sService = null; @@ -88,7 +90,8 @@ public final class StatsLog extends StatsLogInternal { } return false; } - service.sendAppBreadcrumbAtom(label, StatsLog.APP_BREADCRUMB_REPORTED__STATE__STOP); + service.sendAppBreadcrumbAtom( + label, FrameworkStatsLog.APP_BREADCRUMB_REPORTED__STATE__STOP); return true; } catch (RemoteException e) { sService = null; @@ -117,7 +120,7 @@ public final class StatsLog extends StatsLogInternal { return false; } service.sendAppBreadcrumbAtom( - label, StatsLog.APP_BREADCRUMB_REPORTED__STATE__UNSPECIFIED); + label, FrameworkStatsLog.APP_BREADCRUMB_REPORTED__STATE__UNSPECIFIED); return true; } catch (RemoteException e) { sService = null; diff --git a/core/java/android/view/GestureDetector.java b/core/java/android/view/GestureDetector.java index 19793b945ffd..f6c72c4eefbc 100644 --- a/core/java/android/view/GestureDetector.java +++ b/core/java/android/view/GestureDetector.java @@ -16,12 +16,12 @@ package android.view; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__DEEP_PRESS; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__DOUBLE_TAP; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__LONG_PRESS; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__SCROLL; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__SINGLE_TAP; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__UNKNOWN_CLASSIFICATION; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__DEEP_PRESS; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__DOUBLE_TAP; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__LONG_PRESS; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__SCROLL; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__SINGLE_TAP; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__UNKNOWN_CLASSIFICATION; import android.compat.annotation.UnsupportedAppUsage; import android.content.Context; @@ -29,7 +29,8 @@ import android.os.Build; import android.os.Handler; import android.os.Message; import android.os.SystemClock; -import android.util.StatsLog; + +import com.android.internal.util.FrameworkStatsLog; /** * Detects various gestures and events using the supplied {@link MotionEvent}s. @@ -887,8 +888,8 @@ public class GestureDetector { mHasRecordedClassification = true; return; } - StatsLog.write( - StatsLog.TOUCH_GESTURE_CLASSIFIED, + FrameworkStatsLog.write( + FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED, getClass().getName(), classification, (int) (SystemClock.uptimeMillis() - mCurrentMotionEvent.getDownTime()), diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index ee7f6fb11de6..70475860cb4d 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -17,13 +17,14 @@ package android.view; import static android.content.res.Resources.ID_NULL; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__DEEP_PRESS; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__LONG_PRESS; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__SINGLE_TAP; -import static android.util.StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__UNKNOWN_CLASSIFICATION; import static android.view.ViewRootImpl.NEW_INSETS_MODE_FULL; import static android.view.accessibility.AccessibilityEvent.CONTENT_CHANGE_TYPE_UNDEFINED; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__DEEP_PRESS; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__LONG_PRESS; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__SINGLE_TAP; +import static com.android.internal.util.FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__UNKNOWN_CLASSIFICATION; + import static java.lang.Math.max; import android.animation.AnimatorInflater; @@ -102,7 +103,6 @@ import android.util.Property; import android.util.SparseArray; import android.util.SparseIntArray; import android.util.StateSet; -import android.util.StatsLog; import android.util.SuperNotCalledException; import android.util.TypedValue; import android.view.AccessibilityIterators.CharacterTextSegmentIterator; @@ -142,6 +142,7 @@ import android.widget.FrameLayout; import android.widget.ScrollBarDrawable; import com.android.internal.R; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.view.TooltipPopup; import com.android.internal.view.menu.MenuBuilder; import com.android.internal.widget.ScrollBarUtils; @@ -28059,7 +28060,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback, private boolean mOriginalPressedState; /** * The classification of the long click being checked: one of the - * StatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__* constants. + * FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED__CLASSIFICATION__* constants. */ private int mClassification; @@ -28125,7 +28126,8 @@ public class View implements Drawable.Callback, KeyEvent.Callback, } // To avoid negatively impacting View performance, the latency and displacement metrics // are omitted. - StatsLog.write(StatsLog.TOUCH_GESTURE_CLASSIFIED, getClass().getName(), classification); + FrameworkStatsLog.write(FrameworkStatsLog.TOUCH_GESTURE_CLASSIFIED, getClass().getName(), + classification); } /** diff --git a/core/java/com/android/internal/logging/MetricsLogger.java b/core/java/com/android/internal/logging/MetricsLogger.java index ed04fd83a515..140c410e8de6 100644 --- a/core/java/com/android/internal/logging/MetricsLogger.java +++ b/core/java/com/android/internal/logging/MetricsLogger.java @@ -19,10 +19,10 @@ import android.compat.annotation.UnsupportedAppUsage; import android.content.Context; import android.metrics.LogMaker; import android.os.Build; -import android.util.StatsLog; import android.view.View; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; +import com.android.internal.util.FrameworkStatsLog; /** * Writes sysui_multi_event records to the system event log. @@ -55,8 +55,8 @@ public class MetricsLogger { protected void saveLog(LogMaker log) { // TODO(b/116684537): Flag guard logging to event log and statsd socket. EventLogTags.writeSysuiMultiAction(log.serialize()); - StatsLog.write(StatsLog.KEY_VALUE_PAIRS_ATOM, /* UID is retrieved from statsd side */ 0, - log.getEntries()); + FrameworkStatsLog.write(FrameworkStatsLog.KEY_VALUE_PAIRS_ATOM, + /* UID is retrieved from statsd side */ 0, log.getEntries()); } public static final int VIEW_UNKNOWN = MetricsEvent.VIEW_UNKNOWN; diff --git a/core/java/com/android/internal/logging/UiEventLoggerImpl.java b/core/java/com/android/internal/logging/UiEventLoggerImpl.java index fe758a8e6cb7..785b2edf2e1b 100644 --- a/core/java/com/android/internal/logging/UiEventLoggerImpl.java +++ b/core/java/com/android/internal/logging/UiEventLoggerImpl.java @@ -16,10 +16,10 @@ package com.android.internal.logging; -import android.util.StatsLog; +import com.android.internal.util.FrameworkStatsLog; /** - * Standard implementation of UiEventLogger, writing to StatsLog. + * Standard implementation of UiEventLogger, writing to FrameworkStatsLog. * * See UiEventReported atom in atoms.proto for more context. */ @@ -33,7 +33,7 @@ public class UiEventLoggerImpl implements UiEventLogger { public void log(UiEventEnum event, int uid, String packageName) { final int eventID = event.getId(); if (eventID > 0) { - StatsLog.write(StatsLog.UI_EVENT_REPORTED, eventID, uid, packageName); + FrameworkStatsLog.write(FrameworkStatsLog.UI_EVENT_REPORTED, eventID, uid, packageName); } } @@ -42,7 +42,7 @@ public class UiEventLoggerImpl implements UiEventLogger { InstanceId instance) { final int eventID = event.getId(); if (eventID > 0) { - StatsLog.write(StatsLog.UI_EVENT_REPORTED, eventID, uid, packageName, + FrameworkStatsLog.write(FrameworkStatsLog.UI_EVENT_REPORTED, eventID, uid, packageName, instance.getId()); } } diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index 580c1f00d788..18066dce287e 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -85,7 +85,6 @@ import android.util.Slog; import android.util.SparseArray; import android.util.SparseIntArray; import android.util.SparseLongArray; -import android.util.StatsLog; import android.util.TimeUtils; import android.util.Xml; import android.view.Display; @@ -100,6 +99,7 @@ import com.android.internal.os.KernelCpuUidTimeReader.KernelCpuUidUserSysTimeRea import com.android.internal.util.ArrayUtils; import com.android.internal.util.FastPrintWriter; import com.android.internal.util.FastXmlSerializer; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.XmlUtils; import libcore.util.EmptyArray; @@ -4263,13 +4263,13 @@ public class BatteryStatsImpl extends BatteryStats { getUidStatsLocked(uid).noteStartWakeLocked(pid, name, type, elapsedRealtime); if (wc != null) { - StatsLog.write(StatsLog.WAKELOCK_STATE_CHANGED, wc.getUids(), wc.getTags(), - getPowerManagerWakeLockLevel(type), name, - StatsLog.WAKELOCK_STATE_CHANGED__STATE__ACQUIRE); + FrameworkStatsLog.write(FrameworkStatsLog.WAKELOCK_STATE_CHANGED, wc.getUids(), + wc.getTags(), getPowerManagerWakeLockLevel(type), name, + FrameworkStatsLog.WAKELOCK_STATE_CHANGED__STATE__ACQUIRE); } else { - StatsLog.write_non_chained(StatsLog.WAKELOCK_STATE_CHANGED, uid, null, - getPowerManagerWakeLockLevel(type), name, - StatsLog.WAKELOCK_STATE_CHANGED__STATE__ACQUIRE); + FrameworkStatsLog.write_non_chained(FrameworkStatsLog.WAKELOCK_STATE_CHANGED, uid, + null, getPowerManagerWakeLockLevel(type), name, + FrameworkStatsLog.WAKELOCK_STATE_CHANGED__STATE__ACQUIRE); } } } @@ -4308,13 +4308,13 @@ public class BatteryStatsImpl extends BatteryStats { getUidStatsLocked(uid).noteStopWakeLocked(pid, name, type, elapsedRealtime); if (wc != null) { - StatsLog.write(StatsLog.WAKELOCK_STATE_CHANGED, wc.getUids(), wc.getTags(), - getPowerManagerWakeLockLevel(type), name, - StatsLog.WAKELOCK_STATE_CHANGED__STATE__RELEASE); + FrameworkStatsLog.write(FrameworkStatsLog.WAKELOCK_STATE_CHANGED, wc.getUids(), + wc.getTags(), getPowerManagerWakeLockLevel(type), name, + FrameworkStatsLog.WAKELOCK_STATE_CHANGED__STATE__RELEASE); } else { - StatsLog.write_non_chained(StatsLog.WAKELOCK_STATE_CHANGED, uid, null, - getPowerManagerWakeLockLevel(type), name, - StatsLog.WAKELOCK_STATE_CHANGED__STATE__RELEASE); + FrameworkStatsLog.write_non_chained(FrameworkStatsLog.WAKELOCK_STATE_CHANGED, uid, + null, getPowerManagerWakeLockLevel(type), name, + FrameworkStatsLog.WAKELOCK_STATE_CHANGED__STATE__RELEASE); } } } @@ -4323,7 +4323,8 @@ public class BatteryStatsImpl extends BatteryStats { * Converts BatteryStats wakelock types back into PowerManager wakelock levels. * This is the inverse map of Notifier.getBatteryStatsWakeLockMonitorType(). * These are estimations, since batterystats loses some of the original data. - * TODO: Delete this. Instead, StatsLog.write should be called from PowerManager's Notifier. + * TODO: Delete this. Instead, FrameworkStatsLog.write should be called from + * PowerManager's Notifier. */ private int getPowerManagerWakeLockLevel(int battertStatsWakelockType) { switch (battertStatsWakelockType) { @@ -4516,7 +4517,7 @@ public class BatteryStatsImpl extends BatteryStats { long deltaUptime = uptimeMs - mLastWakeupUptimeMs; SamplingTimer timer = getWakeupReasonTimerLocked(mLastWakeupReason); timer.add(deltaUptime * 1000, 1); // time in in microseconds - StatsLog.write(StatsLog.KERNEL_WAKEUP_REPORTED, mLastWakeupReason, + FrameworkStatsLog.write(FrameworkStatsLog.KERNEL_WAKEUP_REPORTED, mLastWakeupReason, /* duration_usec */ deltaUptime * 1000); mLastWakeupReason = null; } @@ -4658,12 +4659,12 @@ public class BatteryStatsImpl extends BatteryStats { mGpsNesting++; if (workChain == null) { - StatsLog.write_non_chained(StatsLog.GPS_SCAN_STATE_CHANGED, uid, null, - StatsLog.GPS_SCAN_STATE_CHANGED__STATE__ON); + FrameworkStatsLog.write_non_chained(FrameworkStatsLog.GPS_SCAN_STATE_CHANGED, uid, null, + FrameworkStatsLog.GPS_SCAN_STATE_CHANGED__STATE__ON); } else { - StatsLog.write(StatsLog.GPS_SCAN_STATE_CHANGED, + FrameworkStatsLog.write(FrameworkStatsLog.GPS_SCAN_STATE_CHANGED, workChain.getUids(), workChain.getTags(), - StatsLog.GPS_SCAN_STATE_CHANGED__STATE__ON); + FrameworkStatsLog.GPS_SCAN_STATE_CHANGED__STATE__ON); } getUidStatsLocked(uid).noteStartGps(elapsedRealtime); @@ -4684,11 +4685,11 @@ public class BatteryStatsImpl extends BatteryStats { } if (workChain == null) { - StatsLog.write_non_chained(StatsLog.GPS_SCAN_STATE_CHANGED, uid, null, - StatsLog.GPS_SCAN_STATE_CHANGED__STATE__OFF); + FrameworkStatsLog.write_non_chained(FrameworkStatsLog.GPS_SCAN_STATE_CHANGED, uid, null, + FrameworkStatsLog.GPS_SCAN_STATE_CHANGED__STATE__OFF); } else { - StatsLog.write(StatsLog.GPS_SCAN_STATE_CHANGED, workChain.getUids(), - workChain.getTags(), StatsLog.GPS_SCAN_STATE_CHANGED__STATE__OFF); + FrameworkStatsLog.write(FrameworkStatsLog.GPS_SCAN_STATE_CHANGED, workChain.getUids(), + workChain.getTags(), FrameworkStatsLog.GPS_SCAN_STATE_CHANGED__STATE__OFF); } getUidStatsLocked(uid).noteStopGps(elapsedRealtime); @@ -4947,9 +4948,10 @@ public class BatteryStatsImpl extends BatteryStats { mPowerSaveModeEnabledTimer.stopRunningLocked(elapsedRealtime); } addHistoryRecordLocked(elapsedRealtime, uptime); - StatsLog.write(StatsLog.BATTERY_SAVER_MODE_STATE_CHANGED, enabled ? - StatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__ON : - StatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__OFF); + FrameworkStatsLog.write(FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED, + enabled + ? FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__ON + : FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__OFF); } } @@ -4977,7 +4979,7 @@ public class BatteryStatsImpl extends BatteryStats { if (nowIdling) statsmode = DEVICE_IDLE_MODE_DEEP; else if (nowLightIdling) statsmode = DEVICE_IDLE_MODE_LIGHT; else statsmode = DEVICE_IDLE_MODE_OFF; - StatsLog.write(StatsLog.DEVICE_IDLING_MODE_STATE_CHANGED, statsmode); + FrameworkStatsLog.write(FrameworkStatsLog.DEVICE_IDLING_MODE_STATE_CHANGED, statsmode); } if (mDeviceIdling != nowIdling) { mDeviceIdling = nowIdling; @@ -5023,7 +5025,7 @@ public class BatteryStatsImpl extends BatteryStats { mDeviceIdleModeFullTimer.startRunningLocked(elapsedRealtime); } mDeviceIdleMode = mode; - StatsLog.write(StatsLog.DEVICE_IDLE_MODE_STATE_CHANGED, mode); + FrameworkStatsLog.write(FrameworkStatsLog.DEVICE_IDLE_MODE_STATE_CHANGED, mode); } } @@ -5197,7 +5199,8 @@ public class BatteryStatsImpl extends BatteryStats { if (DEBUG_HISTORY) Slog.v(TAG, "Phone started scanning to: " + Integer.toHexString(mHistoryCur.states)); mPhoneSignalScanningTimer.startRunningLocked(elapsedRealtime); - StatsLog.write(StatsLog.PHONE_SERVICE_STATE_CHANGED, state, simState, strengthBin); + FrameworkStatsLog.write(FrameworkStatsLog.PHONE_SERVICE_STATE_CHANGED, state, + simState, strengthBin); } } @@ -5209,7 +5212,8 @@ public class BatteryStatsImpl extends BatteryStats { + Integer.toHexString(mHistoryCur.states)); newHistory = true; mPhoneSignalScanningTimer.stopRunningLocked(elapsedRealtime); - StatsLog.write(StatsLog.PHONE_SERVICE_STATE_CHANGED, state, simState, strengthBin); + FrameworkStatsLog.write(FrameworkStatsLog.PHONE_SERVICE_STATE_CHANGED, state, + simState, strengthBin); } } @@ -5236,7 +5240,8 @@ public class BatteryStatsImpl extends BatteryStats { if (DEBUG_HISTORY) Slog.v(TAG, "Signal strength " + strengthBin + " to: " + Integer.toHexString(mHistoryCur.states)); newHistory = true; - StatsLog.write(StatsLog.PHONE_SIGNAL_STRENGTH_CHANGED, strengthBin); + FrameworkStatsLog.write( + FrameworkStatsLog.PHONE_SIGNAL_STRENGTH_CHANGED, strengthBin); } else { stopAllPhoneSignalStrengthTimersLocked(-1); } @@ -12436,13 +12441,13 @@ public class BatteryStatsImpl extends BatteryStats { final int status, final int plugType, final int level) { if (recentPast == null || recentPast.batteryStatus != status) { - StatsLog.write(StatsLog.CHARGING_STATE_CHANGED, status); + FrameworkStatsLog.write(FrameworkStatsLog.CHARGING_STATE_CHANGED, status); } if (recentPast == null || recentPast.batteryPlugType != plugType) { - StatsLog.write(StatsLog.PLUGGED_STATE_CHANGED, plugType); + FrameworkStatsLog.write(FrameworkStatsLog.PLUGGED_STATE_CHANGED, plugType); } if (recentPast == null || recentPast.batteryLevel != level) { - StatsLog.write(StatsLog.BATTERY_LEVEL_CHANGED, level); + FrameworkStatsLog.write(FrameworkStatsLog.BATTERY_LEVEL_CHANGED, level); } } diff --git a/core/java/com/android/internal/os/StatsdHiddenApiUsageLogger.java b/core/java/com/android/internal/os/StatsdHiddenApiUsageLogger.java index c169b2239554..89773b3feac7 100644 --- a/core/java/com/android/internal/os/StatsdHiddenApiUsageLogger.java +++ b/core/java/com/android/internal/os/StatsdHiddenApiUsageLogger.java @@ -18,10 +18,10 @@ package com.android.internal.os; import android.metrics.LogMaker; import android.os.Process; -import android.util.StatsLog; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; +import com.android.internal.util.FrameworkStatsLog; import dalvik.system.VMRuntime.HiddenApiUsageLogger; @@ -84,23 +84,24 @@ class StatsdHiddenApiUsageLogger implements HiddenApiUsageLogger { } private void newLogUsage(String signature, int accessMethod, boolean accessDenied) { - int accessMethodProto = StatsLog.HIDDEN_API_USED__ACCESS_METHOD__NONE; + int accessMethodProto = FrameworkStatsLog.HIDDEN_API_USED__ACCESS_METHOD__NONE; switch(accessMethod) { case HiddenApiUsageLogger.ACCESS_METHOD_NONE: - accessMethodProto = StatsLog.HIDDEN_API_USED__ACCESS_METHOD__NONE; + accessMethodProto = FrameworkStatsLog.HIDDEN_API_USED__ACCESS_METHOD__NONE; break; case HiddenApiUsageLogger.ACCESS_METHOD_REFLECTION: - accessMethodProto = StatsLog.HIDDEN_API_USED__ACCESS_METHOD__REFLECTION; + accessMethodProto = FrameworkStatsLog.HIDDEN_API_USED__ACCESS_METHOD__REFLECTION; break; case HiddenApiUsageLogger.ACCESS_METHOD_JNI: - accessMethodProto = StatsLog.HIDDEN_API_USED__ACCESS_METHOD__JNI; + accessMethodProto = FrameworkStatsLog.HIDDEN_API_USED__ACCESS_METHOD__JNI; break; case HiddenApiUsageLogger.ACCESS_METHOD_LINKING: - accessMethodProto = StatsLog.HIDDEN_API_USED__ACCESS_METHOD__LINKING; + accessMethodProto = FrameworkStatsLog.HIDDEN_API_USED__ACCESS_METHOD__LINKING; break; } int uid = Process.myUid(); - StatsLog.write(StatsLog.HIDDEN_API_USED, uid, signature, accessMethodProto, accessDenied); + FrameworkStatsLog.write(FrameworkStatsLog.HIDDEN_API_USED, uid, signature, + accessMethodProto, accessDenied); } } diff --git a/core/java/com/android/internal/os/logging/MetricsLoggerWrapper.java b/core/java/com/android/internal/os/logging/MetricsLoggerWrapper.java index 8bb1e48201bb..ba60fa590792 100644 --- a/core/java/com/android/internal/os/logging/MetricsLoggerWrapper.java +++ b/core/java/com/android/internal/os/logging/MetricsLoggerWrapper.java @@ -20,11 +20,11 @@ import android.content.ComponentName; import android.content.Context; import android.content.pm.PackageManager.NameNotFoundException; import android.util.Pair; -import android.util.StatsLog; import android.view.WindowManager.LayoutParams; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; +import com.android.internal.util.FrameworkStatsLog; /** * Used to wrap different logging calls in one, so that client side code base is clean and more @@ -39,10 +39,10 @@ public class MetricsLoggerWrapper { Pair<ComponentName, Integer> topActivityInfo) { MetricsLogger.action(context, MetricsEvent.ACTION_PICTURE_IN_PICTURE_DISMISSED, METRIC_VALUE_DISMISSED_BY_TAP); - StatsLog.write(StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, + FrameworkStatsLog.write(FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, getUid(context, topActivityInfo.first, topActivityInfo.second), topActivityInfo.first.flattenToString(), - StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__DISMISSED); + FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__DISMISSED); } public static void logPictureInPictureDismissByDrag(Context context, @@ -50,20 +50,20 @@ public class MetricsLoggerWrapper { MetricsLogger.action(context, MetricsEvent.ACTION_PICTURE_IN_PICTURE_DISMISSED, METRIC_VALUE_DISMISSED_BY_DRAG); - StatsLog.write(StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, + FrameworkStatsLog.write(FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, getUid(context, topActivityInfo.first, topActivityInfo.second), topActivityInfo.first.flattenToString(), - StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__DISMISSED); + FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__DISMISSED); } public static void logPictureInPictureMinimize(Context context, boolean isMinimized, Pair<ComponentName, Integer> topActivityInfo) { MetricsLogger.action(context, MetricsEvent.ACTION_PICTURE_IN_PICTURE_MINIMIZED, isMinimized); - StatsLog.write(StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, + FrameworkStatsLog.write(FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, getUid(context, topActivityInfo.first, topActivityInfo.second), topActivityInfo.first.flattenToString(), - StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__MINIMIZED); + FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__MINIMIZED); } /** @@ -92,29 +92,29 @@ public class MetricsLoggerWrapper { int uid, String shortComponentName, boolean supportsEnterPipOnTaskSwitch) { MetricsLogger.action(context, MetricsEvent.ACTION_PICTURE_IN_PICTURE_ENTERED, supportsEnterPipOnTaskSwitch); - StatsLog.write(StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, uid, + FrameworkStatsLog.write(FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, uid, shortComponentName, - StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__ENTERED); + FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__ENTERED); } public static void logPictureInPictureFullScreen(Context context, int uid, String shortComponentName) { MetricsLogger.action(context, MetricsEvent.ACTION_PICTURE_IN_PICTURE_EXPANDED_TO_FULLSCREEN); - StatsLog.write(StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, + FrameworkStatsLog.write(FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED, uid, shortComponentName, - StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__EXPANDED_TO_FULL_SCREEN); + FrameworkStatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__EXPANDED_TO_FULL_SCREEN); } public static void logAppOverlayEnter(int uid, String packageName, boolean changed, int type, boolean usingAlertWindow) { if (changed) { if (type != LayoutParams.TYPE_APPLICATION_OVERLAY) { - StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, true, - StatsLog.OVERLAY_STATE_CHANGED__STATE__ENTERED); + FrameworkStatsLog.write(FrameworkStatsLog.OVERLAY_STATE_CHANGED, uid, packageName, + true, FrameworkStatsLog.OVERLAY_STATE_CHANGED__STATE__ENTERED); } else if (!usingAlertWindow){ - StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, false, - StatsLog.OVERLAY_STATE_CHANGED__STATE__ENTERED); + FrameworkStatsLog.write(FrameworkStatsLog.OVERLAY_STATE_CHANGED, uid, packageName, + false, FrameworkStatsLog.OVERLAY_STATE_CHANGED__STATE__ENTERED); } } } @@ -122,11 +122,11 @@ public class MetricsLoggerWrapper { public static void logAppOverlayExit(int uid, String packageName, boolean changed, int type, boolean usingAlertWindow) { if (changed) { if (type != LayoutParams.TYPE_APPLICATION_OVERLAY) { - StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, true, - StatsLog.OVERLAY_STATE_CHANGED__STATE__EXITED); + FrameworkStatsLog.write(FrameworkStatsLog.OVERLAY_STATE_CHANGED, uid, packageName, + true, FrameworkStatsLog.OVERLAY_STATE_CHANGED__STATE__EXITED); } else if (!usingAlertWindow){ - StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, false, - StatsLog.OVERLAY_STATE_CHANGED__STATE__EXITED); + FrameworkStatsLog.write(FrameworkStatsLog.OVERLAY_STATE_CHANGED, uid, packageName, + false, FrameworkStatsLog.OVERLAY_STATE_CHANGED__STATE__EXITED); } } } diff --git a/core/java/com/android/server/BootReceiver.java b/core/java/com/android/server/BootReceiver.java index 31b5e491d0e5..ac2361dff560 100644 --- a/core/java/com/android/server/BootReceiver.java +++ b/core/java/com/android/server/BootReceiver.java @@ -35,14 +35,13 @@ import android.text.TextUtils; import android.util.AtomicFile; import android.util.EventLog; import android.util.Slog; -import android.util.StatsLog; import android.util.Xml; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.MetricsLogger; import com.android.internal.util.FastXmlSerializer; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.XmlUtils; -import com.android.server.DropboxLogTags; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; @@ -330,7 +329,7 @@ public class BootReceiver extends BroadcastReceiver { addTextToDropBox(db, "system_server_native_crash", text, filename, maxSize); } if (tag.equals(TAG_TOMBSTONE)) { - StatsLog.write(StatsLog.TOMB_STONE_OCCURRED); + FrameworkStatsLog.write(FrameworkStatsLog.TOMB_STONE_OCCURRED); } addTextToDropBox(db, tag, text, filename, maxSize); } @@ -427,20 +426,25 @@ public class BootReceiver extends BroadcastReceiver { int eventType; switch (propPostfix) { case "early": - eventType = StatsLog.BOOT_TIME_EVENT_DURATION__EVENT__MOUNT_EARLY_DURATION; + eventType = + FrameworkStatsLog + .BOOT_TIME_EVENT_DURATION__EVENT__MOUNT_EARLY_DURATION; break; case "default": eventType = - StatsLog.BOOT_TIME_EVENT_DURATION__EVENT__MOUNT_DEFAULT_DURATION; + FrameworkStatsLog + .BOOT_TIME_EVENT_DURATION__EVENT__MOUNT_DEFAULT_DURATION; break; case "late": - eventType = StatsLog.BOOT_TIME_EVENT_DURATION__EVENT__MOUNT_LATE_DURATION; + eventType = + FrameworkStatsLog + .BOOT_TIME_EVENT_DURATION__EVENT__MOUNT_LATE_DURATION; break; default: continue; } - StatsLog.write(StatsLog.BOOT_TIME_EVENT_DURATION_REPORTED, eventType, - duration); + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_DURATION_REPORTED, + eventType, duration); } } } @@ -544,7 +548,8 @@ public class BootReceiver extends BroadcastReceiver { Slog.e(TAG, "No value received for shutdown duration"); } - StatsLog.write(StatsLog.SHUTDOWN_SEQUENCE_REPORTED, reboot, reason, start, duration); + FrameworkStatsLog.write(FrameworkStatsLog.SHUTDOWN_SEQUENCE_REPORTED, reboot, reason, start, + duration); } private static void logFsShutdownTime() { @@ -571,19 +576,19 @@ public class BootReceiver extends BroadcastReceiver { Pattern pattern = Pattern.compile(LAST_SHUTDOWN_TIME_PATTERN, Pattern.MULTILINE); Matcher matcher = pattern.matcher(lines); if (matcher.find()) { - StatsLog.write(StatsLog.BOOT_TIME_EVENT_DURATION_REPORTED, - StatsLog.BOOT_TIME_EVENT_DURATION__EVENT__SHUTDOWN_DURATION, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_DURATION_REPORTED, + FrameworkStatsLog.BOOT_TIME_EVENT_DURATION__EVENT__SHUTDOWN_DURATION, Integer.parseInt(matcher.group(1))); - StatsLog.write(StatsLog.BOOT_TIME_EVENT_ERROR_CODE_REPORTED, - StatsLog.BOOT_TIME_EVENT_ERROR_CODE__EVENT__SHUTDOWN_UMOUNT_STAT, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_ERROR_CODE_REPORTED, + FrameworkStatsLog.BOOT_TIME_EVENT_ERROR_CODE__EVENT__SHUTDOWN_UMOUNT_STAT, Integer.parseInt(matcher.group(2))); Slog.i(TAG, "boot_fs_shutdown," + matcher.group(1) + "," + matcher.group(2)); } else { // not found // This can happen when a device has too much kernel log after file system unmount // ,exceeding maxReadSize. And having that much kernel logging can affect overall // performance as well. So it is better to fix the kernel to reduce the amount of log. - StatsLog.write(StatsLog.BOOT_TIME_EVENT_ERROR_CODE_REPORTED, - StatsLog.BOOT_TIME_EVENT_ERROR_CODE__EVENT__SHUTDOWN_UMOUNT_STAT, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_ERROR_CODE_REPORTED, + FrameworkStatsLog.BOOT_TIME_EVENT_ERROR_CODE__EVENT__SHUTDOWN_UMOUNT_STAT, UMOUNT_STATUS_NOT_AVAILABLE); Slog.w(TAG, "boot_fs_shutdown, string not found"); } @@ -694,8 +699,9 @@ public class BootReceiver extends BroadcastReceiver { } stat = fixFsckFsStat(partition, stat, lines, startLineNumber, endLineNumber); if ("userdata".equals(partition) || "data".equals(partition)) { - StatsLog.write(StatsLog.BOOT_TIME_EVENT_ERROR_CODE_REPORTED, - StatsLog.BOOT_TIME_EVENT_ERROR_CODE__EVENT__FS_MGR_FS_STAT_DATA_PARTITION, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_ERROR_CODE_REPORTED, + FrameworkStatsLog + .BOOT_TIME_EVENT_ERROR_CODE__EVENT__FS_MGR_FS_STAT_DATA_PARTITION, stat); } Slog.i(TAG, "fs_stat, partition:" + partition + " stat:0x" + Integer.toHexString(stat)); diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryStatsHelperTest.java b/core/tests/coretests/src/com/android/internal/os/BatteryStatsHelperTest.java index 355601ca05ed..fbe16f2c39d1 100644 --- a/core/tests/coretests/src/com/android/internal/os/BatteryStatsHelperTest.java +++ b/core/tests/coretests/src/com/android/internal/os/BatteryStatsHelperTest.java @@ -37,12 +37,13 @@ import android.content.pm.PackageManager; import android.os.BatteryStats; import android.os.Process; import android.text.format.DateUtils; -import android.util.StatsLog; import androidx.test.InstrumentationRegistry; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; +import com.android.internal.util.FrameworkStatsLog; + import junit.framework.TestCase; import org.junit.Before; @@ -262,31 +263,31 @@ public class BatteryStatsHelperTest extends TestCase { @Test public void testDrainTypesSyncedWithProto() { assertEquals(BatterySipper.DrainType.AMBIENT_DISPLAY.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__AMBIENT_DISPLAY); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__AMBIENT_DISPLAY); // AtomsProto has no "APP" assertEquals(BatterySipper.DrainType.BLUETOOTH.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__BLUETOOTH); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__BLUETOOTH); assertEquals(BatterySipper.DrainType.CAMERA.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__CAMERA); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__CAMERA); assertEquals(BatterySipper.DrainType.CELL.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__CELL); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__CELL); assertEquals(BatterySipper.DrainType.FLASHLIGHT.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__FLASHLIGHT); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__FLASHLIGHT); assertEquals(BatterySipper.DrainType.IDLE.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__IDLE); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__IDLE); assertEquals(BatterySipper.DrainType.MEMORY.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__MEMORY); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__MEMORY); assertEquals(BatterySipper.DrainType.OVERCOUNTED.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__OVERCOUNTED); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__OVERCOUNTED); assertEquals(BatterySipper.DrainType.PHONE.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__PHONE); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__PHONE); assertEquals(BatterySipper.DrainType.SCREEN.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__SCREEN); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__SCREEN); assertEquals(BatterySipper.DrainType.UNACCOUNTED.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__UNACCOUNTED); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__UNACCOUNTED); // AtomsProto has no "USER" assertEquals(BatterySipper.DrainType.WIFI.ordinal(), - StatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__WIFI); + FrameworkStatsLog.DEVICE_CALCULATED_POWER_BLAME_OTHER__DRAIN_TYPE__WIFI); } private BatterySipper createTestSmearBatterySipper(long activityTime, double totalPowerMah, diff --git a/location/java/com/android/internal/location/gnssmetrics/GnssMetrics.java b/location/java/com/android/internal/location/gnssmetrics/GnssMetrics.java index 127d00c0afe2..d57148092754 100644 --- a/location/java/com/android/internal/location/gnssmetrics/GnssMetrics.java +++ b/location/java/com/android/internal/location/gnssmetrics/GnssMetrics.java @@ -24,12 +24,12 @@ import android.server.location.ServerLocationProtoEnums; import android.text.format.DateUtils; import android.util.Base64; import android.util.Log; -import android.util.StatsLog; import android.util.TimeUtils; import com.android.internal.app.IBatteryStats; import com.android.internal.location.nano.GnssLogsProto.GnssLog; import com.android.internal.location.nano.GnssLogsProto.PowerMetrics; +import com.android.internal.util.FrameworkStatsLog; import java.util.ArrayList; import java.util.Arrays; @@ -540,7 +540,7 @@ public class GnssMetrics { } int signalLevel = getSignalLevel(avgCn0); if (signalLevel != mLastSignalLevel) { - StatsLog.write(StatsLog.GPS_SIGNAL_QUALITY_CHANGED, signalLevel); + FrameworkStatsLog.write(FrameworkStatsLog.GPS_SIGNAL_QUALITY_CHANGED, signalLevel); mLastSignalLevel = signalLevel; } try { diff --git a/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureMetricsLogger.java b/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureMetricsLogger.java index dd1b84b16f68..7ea4eff3381c 100644 --- a/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureMetricsLogger.java +++ b/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureMetricsLogger.java @@ -20,7 +20,8 @@ import android.annotation.Nullable; import android.content.ComponentName; import android.content.ContentCaptureOptions; import android.service.contentcapture.FlushMetrics; -import android.util.StatsLog; + +import com.android.internal.util.FrameworkStatsLog; import java.util.List; @@ -35,8 +36,8 @@ public final class ContentCaptureMetricsLogger { /** @hide */ public static void writeServiceEvent(int eventType, @NonNull String serviceName, @Nullable String targetPackage) { - StatsLog.write(StatsLog.CONTENT_CAPTURE_SERVICE_EVENTS, eventType, serviceName, - targetPackage); + FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS, eventType, + serviceName, targetPackage); } /** @hide */ @@ -79,16 +80,16 @@ public final class ContentCaptureMetricsLogger { stringBuilder.append(activities.get(i).flattenToShortString()); } } - StatsLog.write(StatsLog.CONTENT_CAPTURE_SERVICE_EVENTS, - StatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__SET_WHITELIST, + FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS, + FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__SET_WHITELIST, serviceName, stringBuilder.toString()); } /** @hide */ public static void writeSessionEvent(int sessionId, int event, int flags, @NonNull ComponentName service, @Nullable ComponentName app, boolean isChildSession) { - StatsLog.write(StatsLog.CONTENT_CAPTURE_SESSION_EVENTS, sessionId, event, flags, - ComponentName.flattenToShortString(service), + FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS, sessionId, event, + flags, ComponentName.flattenToShortString(service), ComponentName.flattenToShortString(app), isChildSession); } @@ -96,7 +97,7 @@ public final class ContentCaptureMetricsLogger { public static void writeSessionFlush(int sessionId, @NonNull ComponentName service, @Nullable ComponentName app, @NonNull FlushMetrics fm, @NonNull ContentCaptureOptions options, int flushReason) { - StatsLog.write(StatsLog.CONTENT_CAPTURE_FLUSHED, sessionId, + FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_FLUSHED, sessionId, ComponentName.flattenToShortString(service), ComponentName.flattenToShortString(app), fm.sessionStarted, fm.sessionFinished, fm.viewAppearedCount, fm.viewDisappearedCount, fm.viewTextChangedCount, diff --git a/services/contentcapture/java/com/android/server/contentcapture/ContentCapturePerUserService.java b/services/contentcapture/java/com/android/server/contentcapture/ContentCapturePerUserService.java index 0f1122e3886a..583c5b593b88 100644 --- a/services/contentcapture/java/com/android/server/contentcapture/ContentCapturePerUserService.java +++ b/services/contentcapture/java/com/android/server/contentcapture/ContentCapturePerUserService.java @@ -61,13 +61,13 @@ import android.util.ArraySet; import android.util.Slog; import android.util.SparseArray; import android.util.SparseBooleanArray; -import android.util.StatsLog; import android.view.contentcapture.ContentCaptureCondition; import android.view.contentcapture.DataRemovalRequest; import android.view.contentcapture.DataShareRequest; import com.android.internal.annotations.GuardedBy; import com.android.internal.os.IResultReceiver; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.LocalServices; import com.android.server.contentcapture.RemoteContentCaptureService.ContentCaptureServiceCallbacks; import com.android.server.infra.AbstractPerUserSystemService; @@ -275,7 +275,7 @@ final class ContentCapturePerUserService /* binder= */ null); // Log metrics. writeSessionEvent(sessionId, - StatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, + FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, STATE_DISABLED | STATE_NO_SERVICE, serviceComponentName, componentName, /* isChildSession= */ false); return; @@ -299,7 +299,7 @@ final class ContentCapturePerUserService /* binder= */ null); // Log metrics. writeSessionEvent(sessionId, - StatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, + FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, STATE_DISABLED | STATE_NOT_WHITELISTED, serviceComponentName, componentName, /* isChildSession= */ false); return; @@ -313,7 +313,7 @@ final class ContentCapturePerUserService /* binder=*/ null); // Log metrics. writeSessionEvent(sessionId, - StatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, + FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, STATE_DISABLED | STATE_DUPLICATED_ID, serviceComponentName, componentName, /* isChildSession= */ false); return; @@ -330,7 +330,7 @@ final class ContentCapturePerUserService /* binder= */ null); // Log metrics. writeSessionEvent(sessionId, - StatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, + FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED, STATE_DISABLED | STATE_NO_SERVICE, serviceComponentName, componentName, /* isChildSession= */ false); return; @@ -651,7 +651,7 @@ final class ContentCapturePerUserService } finally { Binder.restoreCallingIdentity(token); } - writeServiceEvent(StatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__SET_DISABLED, + writeServiceEvent(FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__SET_DISABLED, getServiceComponentName()); } diff --git a/services/contentcapture/java/com/android/server/contentcapture/RemoteContentCaptureService.java b/services/contentcapture/java/com/android/server/contentcapture/RemoteContentCaptureService.java index c16df0f19943..9a170ac6da10 100644 --- a/services/contentcapture/java/com/android/server/contentcapture/RemoteContentCaptureService.java +++ b/services/contentcapture/java/com/android/server/contentcapture/RemoteContentCaptureService.java @@ -32,13 +32,13 @@ import android.service.contentcapture.IContentCaptureServiceCallback; import android.service.contentcapture.IDataShareCallback; import android.service.contentcapture.SnapshotData; import android.util.Slog; -import android.util.StatsLog; import android.view.contentcapture.ContentCaptureContext; import android.view.contentcapture.DataRemovalRequest; import android.view.contentcapture.DataShareRequest; import com.android.internal.infra.AbstractMultiplePendingRequestsRemoteService; import com.android.internal.os.IResultReceiver; +import com.android.internal.util.FrameworkStatsLog; final class RemoteContentCaptureService extends AbstractMultiplePendingRequestsRemoteService<RemoteContentCaptureService, @@ -83,7 +83,8 @@ final class RemoteContentCaptureService if (connected) { try { mService.onConnected(mServerCallback, sVerbose, sDebug); - writeServiceEvent(StatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__ON_CONNECTED, + writeServiceEvent( + FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__ON_CONNECTED, mComponentName); } finally { // Update the system-service state, in case the service reconnected after @@ -92,7 +93,8 @@ final class RemoteContentCaptureService } } else { mService.onDisconnected(); - writeServiceEvent(StatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__ON_DISCONNECTED, + writeServiceEvent( + FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__ON_DISCONNECTED, mComponentName); } } catch (Exception e) { @@ -114,8 +116,9 @@ final class RemoteContentCaptureService (s) -> s.onSessionStarted(context, sessionId, uid, clientReceiver, initialState)); // Metrics logging. writeSessionEvent(sessionId, - StatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__ON_SESSION_STARTED, initialState, - getComponentName(), context.getActivityComponent(), /* is_child_session= */ false); + FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__ON_SESSION_STARTED, + initialState, getComponentName(), context.getActivityComponent(), + /* is_child_session= */ false); } /** @@ -126,7 +129,7 @@ final class RemoteContentCaptureService scheduleAsyncRequest((s) -> s.onSessionFinished(sessionId)); // Metrics logging. writeSessionEvent(sessionId, - StatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__ON_SESSION_FINISHED, + FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__ON_SESSION_FINISHED, /* flags= */ 0, getComponentName(), /* app= */ null, /* is_child_session= */ false); } @@ -143,7 +146,8 @@ final class RemoteContentCaptureService */ public void onDataRemovalRequest(@NonNull DataRemovalRequest request) { scheduleAsyncRequest((s) -> s.onDataRemovalRequest(request)); - writeServiceEvent(StatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__ON_USER_DATA_REMOVED, + writeServiceEvent( + FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__ON_USER_DATA_REMOVED, mComponentName); } diff --git a/services/core/java/com/android/server/AlarmManagerService.java b/services/core/java/com/android/server/AlarmManagerService.java index 0f2fb9252c29..7c9701f122dd 100644 --- a/services/core/java/com/android/server/AlarmManagerService.java +++ b/services/core/java/com/android/server/AlarmManagerService.java @@ -86,7 +86,6 @@ import android.util.SparseArray; import android.util.SparseBooleanArray; import android.util.SparseIntArray; import android.util.SparseLongArray; -import android.util.StatsLog; import android.util.TimeUtils; import android.util.proto.ProtoOutputStream; @@ -94,6 +93,7 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.util.ArrayUtils; import com.android.internal.util.DumpUtils; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.LocalLog; import com.android.internal.util.StatLogger; @@ -3915,7 +3915,7 @@ class AlarmManagerService extends SystemService { Slog.v(TAG, "Time changed notification from kernel; rebatching"); } // StatsLog requires currentTimeMillis(), which == nowRTC to within usecs. - StatsLog.write(StatsLog.WALL_CLOCK_TIME_SHIFTED, nowRTC); + FrameworkStatsLog.write(FrameworkStatsLog.WALL_CLOCK_TIME_SHIFTED, nowRTC); removeImpl(null, mTimeTickTrigger); removeImpl(mDateChangeSender, null); rebatchAllAlarms(); diff --git a/services/core/java/com/android/server/BluetoothManagerService.java b/services/core/java/com/android/server/BluetoothManagerService.java index 3774b645339d..311a494ee570 100644 --- a/services/core/java/com/android/server/BluetoothManagerService.java +++ b/services/core/java/com/android/server/BluetoothManagerService.java @@ -69,17 +69,17 @@ import android.text.TextUtils; import android.util.FeatureFlagUtils; import android.util.Log; import android.util.Slog; -import android.util.StatsLog; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.util.DumpUtils; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.pm.UserRestrictionsUtils; import java.io.FileDescriptor; import java.io.PrintWriter; -import java.util.HashMap; import java.util.ArrayList; +import java.util.HashMap; import java.util.LinkedList; import java.util.Locale; import java.util.Map; @@ -87,7 +87,6 @@ import java.util.NoSuchElementException; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.locks.ReentrantReadWriteLock; - class BluetoothManagerService extends IBluetoothManager.Stub { private static final String TAG = "BluetoothManagerService"; private static final boolean DBG = true; @@ -2300,9 +2299,9 @@ class BluetoothManagerService extends IBluetoothManager.Stub { new ActiveLog(reason, packageName, enable, System.currentTimeMillis())); } - int state = enable ? StatsLog.BLUETOOTH_ENABLED_STATE_CHANGED__STATE__ENABLED : - StatsLog.BLUETOOTH_ENABLED_STATE_CHANGED__STATE__DISABLED; - StatsLog.write_non_chained(StatsLog.BLUETOOTH_ENABLED_STATE_CHANGED, + int state = enable ? FrameworkStatsLog.BLUETOOTH_ENABLED_STATE_CHANGED__STATE__ENABLED : + FrameworkStatsLog.BLUETOOTH_ENABLED_STATE_CHANGED__STATE__DISABLED; + FrameworkStatsLog.write_non_chained(FrameworkStatsLog.BLUETOOTH_ENABLED_STATE_CHANGED, Binder.getCallingUid(), null, state, reason, packageName); } diff --git a/services/core/java/com/android/server/RescueParty.java b/services/core/java/com/android/server/RescueParty.java index 3e5c278a7fd4..80036bb4b4fa 100644 --- a/services/core/java/com/android/server/RescueParty.java +++ b/services/core/java/com/android/server/RescueParty.java @@ -42,11 +42,11 @@ import android.util.ExceptionUtils; import android.util.Log; import android.util.MathUtils; import android.util.Slog; -import android.util.StatsLog; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.util.ArrayUtils; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.PackageWatchdog.FailureReasons; import com.android.server.PackageWatchdog.PackageHealthObserver; import com.android.server.PackageWatchdog.PackageHealthObserverImpact; @@ -253,7 +253,7 @@ public class RescueParty { private static void executeRescueLevelInternal(Context context, int level, @Nullable String failedPackage) throws Exception { - StatsLog.write(StatsLog.RESCUE_PARTY_RESET_REPORTED, level); + FrameworkStatsLog.write(FrameworkStatsLog.RESCUE_PARTY_RESET_REPORTED, level); switch (level) { case LEVEL_RESET_SETTINGS_UNTRUSTED_DEFAULTS: resetAllSettings(context, Settings.RESET_MODE_UNTRUSTED_DEFAULTS, failedPackage); diff --git a/services/core/java/com/android/server/TelephonyRegistry.java b/services/core/java/com/android/server/TelephonyRegistry.java index 139a87154223..56f942480eaf 100644 --- a/services/core/java/com/android/server/TelephonyRegistry.java +++ b/services/core/java/com/android/server/TelephonyRegistry.java @@ -77,7 +77,6 @@ import android.telephony.data.ApnSetting; import android.telephony.emergency.EmergencyNumber; import android.telephony.ims.ImsReasonInfo; import android.util.LocalLog; -import android.util.StatsLog; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.app.IBatteryStats; @@ -87,6 +86,7 @@ import com.android.internal.telephony.ITelephonyRegistry; import com.android.internal.telephony.TelephonyPermissions; import com.android.internal.util.ArrayUtils; import com.android.internal.util.DumpUtils; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.IndentingPrintWriter; import com.android.server.am.BatteryStatsService; @@ -2395,12 +2395,12 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub { try { if (state == TelephonyManager.CALL_STATE_IDLE) { mBatteryStats.notePhoneOff(); - StatsLog.write(StatsLog.PHONE_STATE_CHANGED, - StatsLog.PHONE_STATE_CHANGED__STATE__OFF); + FrameworkStatsLog.write(FrameworkStatsLog.PHONE_STATE_CHANGED, + FrameworkStatsLog.PHONE_STATE_CHANGED__STATE__OFF); } else { mBatteryStats.notePhoneOn(); - StatsLog.write(StatsLog.PHONE_STATE_CHANGED, - StatsLog.PHONE_STATE_CHANGED__STATE__ON); + FrameworkStatsLog.write(FrameworkStatsLog.PHONE_STATE_CHANGED, + FrameworkStatsLog.PHONE_STATE_CHANGED__STATE__ON); } } catch (RemoteException e) { /* The remote entity disappeared, we can safely ignore the exception. */ diff --git a/services/core/java/com/android/server/Watchdog.java b/services/core/java/com/android/server/Watchdog.java index a60b09fda2e8..a1ccd8459c69 100644 --- a/services/core/java/com/android/server/Watchdog.java +++ b/services/core/java/com/android/server/Watchdog.java @@ -40,10 +40,10 @@ import android.util.EventLog; import android.util.Log; import android.util.Slog; import android.util.SparseArray; -import android.util.StatsLog; import com.android.internal.os.ProcessCpuTracker; import com.android.internal.os.ZygoteConnectionConstants; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.am.ActivityManagerService; import com.android.server.wm.SurfaceAnimationThread; @@ -636,7 +636,8 @@ public class Watchdog extends Thread { "watchdog", null, "system_server", null, null, null, subject, cpuInfo, stack, null); } - StatsLog.write(StatsLog.SYSTEM_SERVER_WATCHDOG_OCCURRED, subject); + FrameworkStatsLog.write(FrameworkStatsLog.SYSTEM_SERVER_WATCHDOG_OCCURRED, + subject); } }; dropboxThread.start(); diff --git a/services/core/java/com/android/server/adb/AdbDebuggingManager.java b/services/core/java/com/android/server/adb/AdbDebuggingManager.java index 143474bd5c94..10994133e265 100644 --- a/services/core/java/com/android/server/adb/AdbDebuggingManager.java +++ b/services/core/java/com/android/server/adb/AdbDebuggingManager.java @@ -46,12 +46,12 @@ import android.service.adb.AdbDebuggingManagerProto; import android.util.AtomicFile; import android.util.Base64; import android.util.Slog; -import android.util.StatsLog; import android.util.Xml; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.util.FastXmlSerializer; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.XmlUtils; import com.android.internal.util.dump.DualDumpOutputStream; import com.android.server.FgThread; @@ -493,8 +493,8 @@ public class AdbDebuggingManager { "Logging key " + key + ", state = " + state + ", alwaysAllow = " + alwaysAllow + ", lastConnectionTime = " + lastConnectionTime + ", authWindow = " + authWindow); - StatsLog.write(StatsLog.ADB_CONNECTION_CHANGED, lastConnectionTime, authWindow, state, - alwaysAllow); + FrameworkStatsLog.write(FrameworkStatsLog.ADB_CONNECTION_CHANGED, lastConnectionTime, + authWindow, state, alwaysAllow); } diff --git a/services/core/java/com/android/server/attention/AttentionManagerService.java b/services/core/java/com/android/server/attention/AttentionManagerService.java index 5ac5b29b1475..0440de674e9e 100644 --- a/services/core/java/com/android/server/attention/AttentionManagerService.java +++ b/services/core/java/com/android/server/attention/AttentionManagerService.java @@ -56,13 +56,12 @@ import android.service.attention.IAttentionService; import android.text.TextUtils; import android.util.Slog; import android.util.SparseArray; -import android.util.StatsLog; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.util.DumpUtils; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.IndentingPrintWriter; -import com.android.internal.util.Preconditions; import com.android.server.SystemService; import java.io.FileDescriptor; @@ -274,8 +273,8 @@ public class AttentionManagerService extends SystemService { userState.mAttentionCheckCacheBuffer.add( new AttentionCheckCache(SystemClock.uptimeMillis(), result, timestamp)); } - StatsLog.write( - StatsLog.ATTENTION_MANAGER_SERVICE_RESULT_REPORTED, + FrameworkStatsLog.write( + FrameworkStatsLog.ATTENTION_MANAGER_SERVICE_RESULT_REPORTED, result); } @@ -287,8 +286,8 @@ public class AttentionManagerService extends SystemService { userState.mCurrentAttentionCheck.mIsFulfilled = true; } - StatsLog.write( - StatsLog.ATTENTION_MANAGER_SERVICE_RESULT_REPORTED, + FrameworkStatsLog.write( + FrameworkStatsLog.ATTENTION_MANAGER_SERVICE_RESULT_REPORTED, error); } }; diff --git a/services/core/java/com/android/server/camera/CameraServiceProxy.java b/services/core/java/com/android/server/camera/CameraServiceProxy.java index 96af74a60b1d..61c99b88d113 100644 --- a/services/core/java/com/android/server/camera/CameraServiceProxy.java +++ b/services/core/java/com/android/server/camera/CameraServiceProxy.java @@ -36,23 +36,22 @@ import android.os.UserManager; import android.util.ArrayMap; import android.util.ArraySet; import android.util.Slog; -import android.util.StatsLog; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.LocalServices; import com.android.server.ServiceThread; import com.android.server.SystemService; import com.android.server.wm.WindowManagerInternal; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledThreadPoolExecutor; -import java.util.concurrent.TimeUnit; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Set; +import java.util.concurrent.ScheduledThreadPoolExecutor; +import java.util.concurrent.TimeUnit; /** * CameraServiceProxy is the system_server analog to the camera service running in cameraserver. @@ -315,22 +314,22 @@ public class CameraServiceProxy extends SystemService * Package-private */ private void logCameraUsageEvent(CameraUsageEvent e) { - int facing = StatsLog.CAMERA_ACTION_EVENT__FACING__UNKNOWN; + int facing = FrameworkStatsLog.CAMERA_ACTION_EVENT__FACING__UNKNOWN; switch(e.mCameraFacing) { case ICameraServiceProxy.CAMERA_FACING_BACK: - facing = StatsLog.CAMERA_ACTION_EVENT__FACING__BACK; + facing = FrameworkStatsLog.CAMERA_ACTION_EVENT__FACING__BACK; break; case ICameraServiceProxy.CAMERA_FACING_FRONT: - facing = StatsLog.CAMERA_ACTION_EVENT__FACING__FRONT; + facing = FrameworkStatsLog.CAMERA_ACTION_EVENT__FACING__FRONT; break; case ICameraServiceProxy.CAMERA_FACING_EXTERNAL: - facing = StatsLog.CAMERA_ACTION_EVENT__FACING__EXTERNAL; + facing = FrameworkStatsLog.CAMERA_ACTION_EVENT__FACING__EXTERNAL; break; default: Slog.w(TAG, "Unknown camera facing: " + e.mCameraFacing); } - StatsLog.write(StatsLog.CAMERA_ACTION_EVENT, e.getDuration(), e.mAPILevel, - e.mClientName, facing); + FrameworkStatsLog.write(FrameworkStatsLog.CAMERA_ACTION_EVENT, e.getDuration(), + e.mAPILevel, e.mClientName, facing); } } diff --git a/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java b/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java index 15dd6464e094..a2a795233fe8 100644 --- a/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java +++ b/services/core/java/com/android/server/integrity/AppIntegrityManagerServiceImpl.java @@ -47,10 +47,10 @@ import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.util.Slog; -import android.util.StatsLog; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.LocalServices; import com.android.server.integrity.engine.RuleEvaluationEngine; import com.android.server.integrity.model.IntegrityCheckResult; @@ -170,7 +170,8 @@ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub { success = false; } - StatsLog.write(StatsLog.INTEGRITY_RULES_PUSHED, success, ruleProvider, version); + FrameworkStatsLog.write(FrameworkStatsLog.INTEGRITY_RULES_PUSHED, success, + ruleProvider, version); Intent intent = new Intent(); intent.putExtra(EXTRA_STATUS, success ? STATUS_SUCCESS : STATUS_FAILURE); @@ -262,8 +263,8 @@ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub { + " due to " + result.getMatchedRules()); - StatsLog.write( - StatsLog.INTEGRITY_CHECK_RESULT_REPORTED, + FrameworkStatsLog.write( + FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED, packageName, appCert, appInstallMetadata.getVersionCode(), diff --git a/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java b/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java index 1b605c7c430c..1fa067065e1b 100644 --- a/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java +++ b/services/core/java/com/android/server/integrity/model/IntegrityCheckResult.java @@ -18,7 +18,8 @@ package com.android.server.integrity.model; import android.annotation.Nullable; import android.content.integrity.Rule; -import android.util.StatsLog; + +import com.android.internal.util.FrameworkStatsLog; import java.util.Collections; import java.util.List; @@ -86,11 +87,11 @@ public final class IntegrityCheckResult { */ public int getLoggingResponse() { if (getEffect() == Effect.DENY) { - return StatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED; + return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED; } else if (getEffect() == Effect.ALLOW && getMatchedRules().isEmpty()) { - return StatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED; + return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED; } else if (getEffect() == Effect.ALLOW && !getMatchedRules().isEmpty()) { - return StatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED; + return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED; } else { throw new IllegalStateException("IntegrityCheckResult is not valid."); } diff --git a/services/core/java/com/android/server/locksettings/RebootEscrowManager.java b/services/core/java/com/android/server/locksettings/RebootEscrowManager.java index 46ea9d11d1dc..0f5261fe6554 100644 --- a/services/core/java/com/android/server/locksettings/RebootEscrowManager.java +++ b/services/core/java/com/android/server/locksettings/RebootEscrowManager.java @@ -25,9 +25,9 @@ import android.os.RemoteException; import android.os.ServiceManager; import android.os.UserManager; import android.util.Slog; -import android.util.StatsLog; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.widget.RebootEscrowListener; import java.io.IOException; @@ -129,7 +129,7 @@ class RebootEscrowManager { for (UserInfo user : users) { mStorage.removeRebootEscrow(user.id); } - StatsLog.write(StatsLog.REBOOT_ESCROW_RECOVERY_REPORTED, false); + FrameworkStatsLog.write(FrameworkStatsLog.REBOOT_ESCROW_RECOVERY_REPORTED, false); return; } @@ -137,7 +137,8 @@ class RebootEscrowManager { for (UserInfo user : rebootEscrowUsers) { allUsersUnlocked &= restoreRebootEscrowForUser(user.id, escrowKey); } - StatsLog.write(StatsLog.REBOOT_ESCROW_RECOVERY_REPORTED, allUsersUnlocked); + FrameworkStatsLog.write(FrameworkStatsLog.REBOOT_ESCROW_RECOVERY_REPORTED, + allUsersUnlocked); } private SecretKeySpec getAndClearRebootEscrowKey() { diff --git a/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java b/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java index 8893213d4a71..8d090f1b6fce 100644 --- a/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java +++ b/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java @@ -16,7 +16,7 @@ package com.android.server.rollback; -import static android.util.StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN; +import static com.android.internal.util.FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN; import android.annotation.Nullable; import android.content.BroadcastReceiver; @@ -38,9 +38,9 @@ import android.os.SystemProperties; import android.text.TextUtils; import android.util.ArraySet; import android.util.Slog; -import android.util.StatsLog; import com.android.internal.annotations.GuardedBy; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.PackageWatchdog; import com.android.server.PackageWatchdog.FailureReasons; import com.android.server.PackageWatchdog.PackageHealthObserver; @@ -224,14 +224,15 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve saveStagedRollbackId(rollbackId); } WatchdogRollbackLogger.logEvent(logPackage, - StatsLog + FrameworkStatsLog .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_BOOT_TRIGGERED, WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN, ""); } else if (sessionInfo.isStagedSessionFailed() && markStagedSessionHandled(rollbackId)) { WatchdogRollbackLogger.logEvent(logPackage, - StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, + FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN, ""); mContext.unregisterReceiver(listener); @@ -337,7 +338,7 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve final VersionedPackage logPackage = logPackageTemp; WatchdogRollbackLogger.logEvent(logPackage, - StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_INITIATE, + FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_INITIATE, reasonToLog, failedPackageToLog); final LocalIntentReceiver rollbackReceiver = new LocalIntentReceiver((Intent result) -> { int status = result.getIntExtra(RollbackManager.EXTRA_STATUS, @@ -355,7 +356,8 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve logPackage); } else { WatchdogRollbackLogger.logEvent(logPackage, - StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS, + FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS, reasonToLog, failedPackageToLog); } } else { @@ -363,7 +365,8 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve markStagedSessionHandled(rollback.getRollbackId()); } WatchdogRollbackLogger.logEvent(logPackage, - StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, + FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, reasonToLog, failedPackageToLog); } }); diff --git a/services/core/java/com/android/server/rollback/WatchdogRollbackLogger.java b/services/core/java/com/android/server/rollback/WatchdogRollbackLogger.java index 3c923e7d2e31..79e1a2912147 100644 --- a/services/core/java/com/android/server/rollback/WatchdogRollbackLogger.java +++ b/services/core/java/com/android/server/rollback/WatchdogRollbackLogger.java @@ -16,11 +16,11 @@ package com.android.server.rollback; -import static android.util.StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_CRASH; -import static android.util.StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_NOT_RESPONDING; -import static android.util.StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_EXPLICIT_HEALTH_CHECK; -import static android.util.StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_NATIVE_CRASH; -import static android.util.StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN; +import static com.android.internal.util.FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_CRASH; +import static com.android.internal.util.FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_NOT_RESPONDING; +import static com.android.internal.util.FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_EXPLICIT_HEALTH_CHECK; +import static com.android.internal.util.FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_NATIVE_CRASH; +import static com.android.internal.util.FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN; import android.annotation.NonNull; import android.annotation.Nullable; @@ -36,6 +36,7 @@ import android.util.Slog; import android.util.StatsLog; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.PackageWatchdog; import java.util.ArrayList; @@ -138,11 +139,13 @@ public final class WatchdogRollbackLogger { for (VersionedPackage oldLoggingPackage : oldLoggingPackages) { if (sessionInfo.isStagedSessionApplied()) { logEvent(oldLoggingPackage, - StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS, + FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS, WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN, ""); } else if (sessionInfo.isStagedSessionFailed()) { logEvent(oldLoggingPackage, - StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, + FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_UNKNOWN, ""); } } @@ -186,13 +189,14 @@ public final class WatchdogRollbackLogger { private static String rollbackTypeToString(int type) { switch (type) { - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_INITIATE: + case FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_INITIATE: return "ROLLBACK_INITIATE"; - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS: + case FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS: return "ROLLBACK_SUCCESS"; - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE: + case FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE: return "ROLLBACK_FAILURE"; - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_BOOT_TRIGGERED: + case FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_BOOT_TRIGGERED: return "ROLLBACK_BOOT_TRIGGERED"; default: return "UNKNOWN"; @@ -201,13 +205,15 @@ public final class WatchdogRollbackLogger { private static String rollbackReasonToString(int reason) { switch (reason) { - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_NATIVE_CRASH: + case FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_NATIVE_CRASH: return "REASON_NATIVE_CRASH"; - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_EXPLICIT_HEALTH_CHECK: + case FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_EXPLICIT_HEALTH_CHECK: return "REASON_EXPLICIT_HEALTH_CHECK"; - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_CRASH: + case FrameworkStatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_CRASH: return "REASON_APP_CRASH"; - case StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_NOT_RESPONDING: + case FrameworkStatsLog + .WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_REASON__REASON_APP_NOT_RESPONDING: return "REASON_APP_NOT_RESPONDING"; default: return "UNKNOWN"; diff --git a/services/core/java/com/android/server/signedconfig/GlobalSettingsConfigApplicator.java b/services/core/java/com/android/server/signedconfig/GlobalSettingsConfigApplicator.java index d77cf900a0a9..897aa14ebb64 100644 --- a/services/core/java/com/android/server/signedconfig/GlobalSettingsConfigApplicator.java +++ b/services/core/java/com/android/server/signedconfig/GlobalSettingsConfigApplicator.java @@ -23,7 +23,8 @@ import android.provider.Settings; import android.util.ArrayMap; import android.util.ArraySet; import android.util.Slog; -import android.util.StatsLog; + +import com.android.internal.util.FrameworkStatsLog; import java.security.GeneralSecurityException; import java.util.Arrays; @@ -82,7 +83,7 @@ class GlobalSettingsConfigApplicator { return mVerifier.verifySignature(data, signature); } catch (GeneralSecurityException e) { Slog.e(TAG, "Failed to verify signature", e); - mEvent.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__SECURITY_EXCEPTION; + mEvent.status = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__SECURITY_EXCEPTION; return false; } } @@ -116,14 +117,14 @@ class GlobalSettingsConfigApplicator { mEvent.version = config.version; } catch (InvalidConfigException e) { Slog.e(TAG, "Failed to parse global settings from package " + mSourcePackage, e); - mEvent.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__INVALID_CONFIG; + mEvent.status = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__INVALID_CONFIG; return; } int currentVersion = getCurrentConfigVersion(); if (currentVersion >= config.version) { Slog.i(TAG, "Global settings from package " + mSourcePackage + " is older than existing: " + config.version + "<=" + currentVersion); - mEvent.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__OLD_CONFIG; + mEvent.status = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__OLD_CONFIG; return; } // We have new config! @@ -133,12 +134,12 @@ class GlobalSettingsConfigApplicator { config.getMatchingConfig(Build.VERSION.SDK_INT); if (matchedConfig == null) { Slog.i(TAG, "Settings is not applicable to current SDK version; ignoring"); - mEvent.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__NOT_APPLICABLE; + mEvent.status = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__NOT_APPLICABLE; return; } Slog.i(TAG, "Updating global settings to version " + config.version); updateCurrentConfig(config.version, matchedConfig.values); - mEvent.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__APPLIED; + mEvent.status = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__APPLIED; } } diff --git a/services/core/java/com/android/server/signedconfig/SignatureVerifier.java b/services/core/java/com/android/server/signedconfig/SignatureVerifier.java index 146c51688531..a85764221de5 100644 --- a/services/core/java/com/android/server/signedconfig/SignatureVerifier.java +++ b/services/core/java/com/android/server/signedconfig/SignatureVerifier.java @@ -18,7 +18,8 @@ package com.android.server.signedconfig; import android.os.Build; import android.util.Slog; -import android.util.StatsLog; + +import com.android.internal.util.FrameworkStatsLog; import java.nio.charset.StandardCharsets; import java.security.InvalidKeyException; @@ -96,7 +97,8 @@ public class SignatureVerifier { try { signature = Base64.getDecoder().decode(base64Signature); } catch (IllegalArgumentException e) { - mEvent.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__BASE64_FAILURE_SIGNATURE; + mEvent.status = + FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__BASE64_FAILURE_SIGNATURE; Slog.e(TAG, "Failed to base64 decode signature"); return false; } @@ -108,7 +110,8 @@ public class SignatureVerifier { if (DBG) Slog.w(TAG, "Trying to verify signature using debug key"); if (verifyWithPublicKey(mDebugKey, data, signature)) { Slog.i(TAG, "Verified config using debug key"); - mEvent.verifiedWith = StatsLog.SIGNED_CONFIG_REPORTED__VERIFIED_WITH__DEBUG; + mEvent.verifiedWith = + FrameworkStatsLog.SIGNED_CONFIG_REPORTED__VERIFIED_WITH__DEBUG; return true; } else { if (DBG) Slog.i(TAG, "Config verification failed using debug key"); @@ -120,16 +123,19 @@ public class SignatureVerifier { if (mProdKey == null) { Slog.e(TAG, "No prod key; construction failed?"); mEvent.status = - StatsLog.SIGNED_CONFIG_REPORTED__STATUS__SIGNATURE_CHECK_FAILED_PROD_KEY_ABSENT; + FrameworkStatsLog + .SIGNED_CONFIG_REPORTED__STATUS__SIGNATURE_CHECK_FAILED_PROD_KEY_ABSENT; return false; } if (verifyWithPublicKey(mProdKey, data, signature)) { Slog.i(TAG, "Verified config using production key"); - mEvent.verifiedWith = StatsLog.SIGNED_CONFIG_REPORTED__VERIFIED_WITH__PRODUCTION; + mEvent.verifiedWith = + FrameworkStatsLog.SIGNED_CONFIG_REPORTED__VERIFIED_WITH__PRODUCTION; return true; } else { if (DBG) Slog.i(TAG, "Verification failed using production key"); - mEvent.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__SIGNATURE_CHECK_FAILED; + mEvent.status = + FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__SIGNATURE_CHECK_FAILED; return false; } } diff --git a/services/core/java/com/android/server/signedconfig/SignedConfigEvent.java b/services/core/java/com/android/server/signedconfig/SignedConfigEvent.java index 2f2062c6f2ee..c1adf936d79b 100644 --- a/services/core/java/com/android/server/signedconfig/SignedConfigEvent.java +++ b/services/core/java/com/android/server/signedconfig/SignedConfigEvent.java @@ -15,24 +15,24 @@ */ package com.android.server.signedconfig; -import android.util.StatsLog; +import com.android.internal.util.FrameworkStatsLog; /** * Helper class to allow a SignedConfigReported event to be built up in stages. */ public class SignedConfigEvent { - public int type = StatsLog.SIGNED_CONFIG_REPORTED__TYPE__UNKNOWN_TYPE; - public int status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__UNKNOWN_STATUS; + public int type = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__TYPE__UNKNOWN_TYPE; + public int status = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__UNKNOWN_STATUS; public int version = 0; public String fromPackage = null; - public int verifiedWith = StatsLog.SIGNED_CONFIG_REPORTED__VERIFIED_WITH__NO_KEY; + public int verifiedWith = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__VERIFIED_WITH__NO_KEY; /** * Write this event to statslog. */ public void send() { - StatsLog.write(StatsLog.SIGNED_CONFIG_REPORTED, + FrameworkStatsLog.write(FrameworkStatsLog.SIGNED_CONFIG_REPORTED, type, status, version, fromPackage, verifiedWith); } diff --git a/services/core/java/com/android/server/signedconfig/SignedConfigService.java b/services/core/java/com/android/server/signedconfig/SignedConfigService.java index dc39542dc29f..037c82ad6593 100644 --- a/services/core/java/com/android/server/signedconfig/SignedConfigService.java +++ b/services/core/java/com/android/server/signedconfig/SignedConfigService.java @@ -26,8 +26,8 @@ import android.content.pm.PackageManagerInternal; import android.net.Uri; import android.os.Bundle; import android.util.Slog; -import android.util.StatsLog; +import com.android.internal.util.FrameworkStatsLog; import com.android.server.LocalServices; import java.nio.charset.StandardCharsets; @@ -85,7 +85,7 @@ public class SignedConfigService { && metaData.containsKey(KEY_GLOBAL_SETTINGS_SIGNATURE)) { SignedConfigEvent event = new SignedConfigEvent(); try { - event.type = StatsLog.SIGNED_CONFIG_REPORTED__TYPE__GLOBAL_SETTINGS; + event.type = FrameworkStatsLog.SIGNED_CONFIG_REPORTED__TYPE__GLOBAL_SETTINGS; event.fromPackage = packageName; String config = metaData.getString(KEY_GLOBAL_SETTINGS); String signature = metaData.getString(KEY_GLOBAL_SETTINGS_SIGNATURE); @@ -95,7 +95,8 @@ public class SignedConfigService { } catch (IllegalArgumentException iae) { Slog.e(TAG, "Failed to base64 decode global settings config from " + packageName); - event.status = StatsLog.SIGNED_CONFIG_REPORTED__STATUS__BASE64_FAILURE_CONFIG; + event.status = + FrameworkStatsLog.SIGNED_CONFIG_REPORTED__STATUS__BASE64_FAILURE_CONFIG; return; } if (DBG) { diff --git a/services/core/java/com/android/server/storage/DeviceStorageMonitorService.java b/services/core/java/com/android/server/storage/DeviceStorageMonitorService.java index b136ec754f59..734b71824490 100644 --- a/services/core/java/com/android/server/storage/DeviceStorageMonitorService.java +++ b/services/core/java/com/android/server/storage/DeviceStorageMonitorService.java @@ -41,11 +41,11 @@ import android.text.format.DateUtils; import android.util.ArrayMap; import android.util.DataUnit; import android.util.Slog; -import android.util.StatsLog; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; import com.android.internal.notification.SystemNotificationChannels; import com.android.internal.util.DumpUtils; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.IndentingPrintWriter; import com.android.server.EventLogTags; import com.android.server.SystemService; @@ -512,15 +512,15 @@ public class DeviceStorageMonitorService extends SystemService { notification.flags |= Notification.FLAG_NO_CLEAR; mNotifManager.notifyAsUser(uuid.toString(), SystemMessage.NOTE_LOW_STORAGE, notification, UserHandle.ALL); - StatsLog.write(StatsLog.LOW_STORAGE_STATE_CHANGED, + FrameworkStatsLog.write(FrameworkStatsLog.LOW_STORAGE_STATE_CHANGED, Objects.toString(vol.getDescription()), - StatsLog.LOW_STORAGE_STATE_CHANGED__STATE__ON); + FrameworkStatsLog.LOW_STORAGE_STATE_CHANGED__STATE__ON); } else if (State.isLeaving(State.LEVEL_LOW, oldLevel, newLevel)) { mNotifManager.cancelAsUser(uuid.toString(), SystemMessage.NOTE_LOW_STORAGE, UserHandle.ALL); - StatsLog.write(StatsLog.LOW_STORAGE_STATE_CHANGED, + FrameworkStatsLog.write(FrameworkStatsLog.LOW_STORAGE_STATE_CHANGED, Objects.toString(vol.getDescription()), - StatsLog.LOW_STORAGE_STATE_CHANGED__STATE__OFF); + FrameworkStatsLog.LOW_STORAGE_STATE_CHANGED__STATE__OFF); } } diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index 6ba4330f3916..036335ca9011 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -71,7 +71,6 @@ import android.text.TextUtils; import android.util.DisplayMetrics; import android.util.EventLog; import android.util.Slog; -import android.util.StatsLog; import android.view.contentcapture.ContentCaptureManager; import com.android.internal.R; @@ -79,6 +78,7 @@ import com.android.internal.notification.SystemNotificationChannels; import com.android.internal.os.BinderInternal; import com.android.internal.util.ConcurrentUtils; import com.android.internal.util.EmergencyAffordanceManager; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.widget.ILockSettings; import com.android.server.am.ActivityManagerService; import com.android.server.appbinding.AppBindingService; @@ -453,8 +453,9 @@ public final class SystemServer { final long uptimeMillis = SystemClock.elapsedRealtime(); EventLog.writeEvent(EventLogTags.BOOT_PROGRESS_SYSTEM_RUN, uptimeMillis); if (!mRuntimeRestart) { - StatsLog.write(StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, - StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__SYSTEM_SERVER_INIT_START, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, + FrameworkStatsLog + .BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__SYSTEM_SERVER_INIT_START, uptimeMillis); } @@ -570,8 +571,8 @@ public final class SystemServer { if (!mRuntimeRestart && !isFirstBootOrUpgrade()) { final long uptimeMillis = SystemClock.elapsedRealtime(); - StatsLog.write(StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, - StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__SYSTEM_SERVER_READY, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, + FrameworkStatsLog.BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__SYSTEM_SERVER_READY, uptimeMillis); final long maxUptimeMillis = 60 * 1000; if (uptimeMillis > maxUptimeMillis) { @@ -807,8 +808,9 @@ public final class SystemServer { // Start the package manager. if (!mRuntimeRestart) { - StatsLog.write(StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, - StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__PACKAGE_MANAGER_INIT_START, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, + FrameworkStatsLog + .BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__PACKAGE_MANAGER_INIT_START, SystemClock.elapsedRealtime()); } @@ -825,8 +827,9 @@ public final class SystemServer { mPackageManager = mSystemContext.getPackageManager(); t.traceEnd(); if (!mRuntimeRestart && !isFirstBootOrUpgrade()) { - StatsLog.write(StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, - StatsLog.BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__PACKAGE_MANAGER_INIT_READY, + FrameworkStatsLog.write(FrameworkStatsLog.BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED, + FrameworkStatsLog + .BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__PACKAGE_MANAGER_INIT_READY, SystemClock.elapsedRealtime()); } // Manages A/B OTA dexopting. This is a bootstrap service as we need it to rename diff --git a/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java b/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java index ec1423958f8f..6c23ff6fcb3c 100644 --- a/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java +++ b/services/tests/servicestests/src/com/android/server/integrity/model/IntegrityCheckResultTest.java @@ -21,7 +21,8 @@ import static com.google.common.truth.Truth.assertThat; import android.content.integrity.AtomicFormula; import android.content.integrity.CompoundFormula; import android.content.integrity.Rule; -import android.util.StatsLog; + +import com.android.internal.util.FrameworkStatsLog; import org.junit.Test; import org.junit.runner.RunWith; @@ -40,7 +41,7 @@ public class IntegrityCheckResultTest { assertThat(allowResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.ALLOW); assertThat(allowResult.getMatchedRules()).isEmpty(); assertThat(allowResult.getLoggingResponse()) - .isEqualTo(StatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED); + .isEqualTo(FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED); } @Test @@ -58,7 +59,8 @@ public class IntegrityCheckResultTest { assertThat(allowResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.ALLOW); assertThat(allowResult.getMatchedRules()).containsExactly(forceAllowRule); assertThat(allowResult.getLoggingResponse()) - .isEqualTo(StatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED); + .isEqualTo( + FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED); } @Test @@ -76,7 +78,7 @@ public class IntegrityCheckResultTest { assertThat(denyResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.DENY); assertThat(denyResult.getMatchedRules()).containsExactly(failedRule); assertThat(denyResult.getLoggingResponse()) - .isEqualTo(StatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED); + .isEqualTo(FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED); } @Test |