diff options
| -rw-r--r-- | services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java b/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java index ae95483976cb..3a94c931dd5c 100644 --- a/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java +++ b/services/core/java/com/android/server/rollback/RollbackPackageHealthObserver.java @@ -120,6 +120,13 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve RollbackInfo rollback = getAvailableRollback(rollbackManager, failedPackage); int reasonToLog = mapFailureReasonToMetric(rollbackReason); + final String failedPackageToLog; + if (rollbackReason == PackageWatchdog.FAILURE_REASON_NATIVE_CRASH) { + failedPackageToLog = SystemProperties.get( + "ro.init.updatable_crashing_process_name", ""); + } else { + failedPackageToLog = failedPackage.getPackageName(); + } if (rollback == null) { Slog.w(TAG, "Expected rollback but no valid rollback found for package: [ " + failedPackage.getPackageName() + "] with versionCode: [" @@ -129,7 +136,7 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve logEvent(moduleMetadataPackage, StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_INITIATE, - reasonToLog, failedPackage.getPackageName()); + reasonToLog, failedPackageToLog); LocalIntentReceiver rollbackReceiver = new LocalIntentReceiver((Intent result) -> { int status = result.getIntExtra(RollbackManager.EXTRA_STATUS, RollbackManager.STATUS_FAILURE); @@ -147,12 +154,12 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve } else { logEvent(moduleMetadataPackage, StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS, - reasonToLog, failedPackage.getPackageName()); + reasonToLog, failedPackageToLog); } } else { logEvent(moduleMetadataPackage, StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, - reasonToLog, failedPackage.getPackageName()); + reasonToLog, failedPackageToLog); } }); |