frameworks/base
Revision | 231b3d8f6032d5451b9fb8dc94bcbfacaef9af13 (tree) |
---|---|
Time | 2019-12-18 23:39:16 |
Author | Gavin Corkery <gavincorkery@goog...> |
Commiter | Gavin Corkery |
Log native crashing process
Use the new sys.init.updatable_crashing_process_name in
Watchdog-triggered rollback logs in order to track the
process that causes updatable_crashing to be set.
Test: Run atest StagedRollbackTest#testNativeWatchdogTriggersRollback,
Bug: 146415463
Change-Id: I81b55dbf9dc74c9b8d505988b99f7e97ef659fe9
Merged-In: I81b55dbf9dc74c9b8d505988b99f7e97ef659fe9
(cherry picked from commit cf6a399e006d24dbe5bf8ae2e946f8d2e648b630)
@@ -120,6 +120,13 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve | ||
120 | 120 | RollbackInfo rollback = getAvailableRollback(rollbackManager, failedPackage); |
121 | 121 | int reasonToLog = mapFailureReasonToMetric(rollbackReason); |
122 | 122 | |
123 | + final String failedPackageToLog; | |
124 | + if (rollbackReason == PackageWatchdog.FAILURE_REASON_NATIVE_CRASH) { | |
125 | + failedPackageToLog = SystemProperties.get( | |
126 | + "ro.init.updatable_crashing_process_name", ""); | |
127 | + } else { | |
128 | + failedPackageToLog = failedPackage.getPackageName(); | |
129 | + } | |
123 | 130 | if (rollback == null) { |
124 | 131 | Slog.w(TAG, "Expected rollback but no valid rollback found for package: [ " |
125 | 132 | + failedPackage.getPackageName() + "] with versionCode: [" |
@@ -129,7 +136,7 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve | ||
129 | 136 | |
130 | 137 | logEvent(moduleMetadataPackage, |
131 | 138 | StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_INITIATE, |
132 | - reasonToLog, failedPackage.getPackageName()); | |
139 | + reasonToLog, failedPackageToLog); | |
133 | 140 | LocalIntentReceiver rollbackReceiver = new LocalIntentReceiver((Intent result) -> { |
134 | 141 | int status = result.getIntExtra(RollbackManager.EXTRA_STATUS, |
135 | 142 | RollbackManager.STATUS_FAILURE); |
@@ -147,12 +154,12 @@ public final class RollbackPackageHealthObserver implements PackageHealthObserve | ||
147 | 154 | } else { |
148 | 155 | logEvent(moduleMetadataPackage, |
149 | 156 | StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_SUCCESS, |
150 | - reasonToLog, failedPackage.getPackageName()); | |
157 | + reasonToLog, failedPackageToLog); | |
151 | 158 | } |
152 | 159 | } else { |
153 | 160 | logEvent(moduleMetadataPackage, |
154 | 161 | StatsLog.WATCHDOG_ROLLBACK_OCCURRED__ROLLBACK_TYPE__ROLLBACK_FAILURE, |
155 | - reasonToLog, failedPackage.getPackageName()); | |
162 | + reasonToLog, failedPackageToLog); | |
156 | 163 | } |
157 | 164 | }); |
158 | 165 |