Adds wtf log for notify listener failures

Adds wtf log whenever DeadObjectException: unable to notify listener is
thrown from NotificationManagerService on posted, removed, or ranking
updated. The goal is to track Binder transaction failures occuring when
the binder is full.

Bug: 249848655
Test: Only adds more specific exception logging
Change-Id: I82013d7cff36c19d89f3d6f6b25814bb8476f578
This commit is contained in:
Alexander Roederer
2023-04-27 18:00:31 +00:00
parent 742405591b
commit 6b68a56751

View File

@@ -11481,6 +11481,8 @@ public class NotificationManagerService extends SystemService {
StatusBarNotificationHolder sbnHolder = new StatusBarNotificationHolder(sbn);
try {
listener.onNotificationPosted(sbnHolder, rankingUpdate);
} catch (android.os.DeadObjectException ex) {
Slog.wtf(TAG, "unable to notify listener (posted): " + info, ex);
} catch (RemoteException ex) {
Slog.e(TAG, "unable to notify listener (posted): " + info, ex);
}
@@ -11502,6 +11504,8 @@ public class NotificationManagerService extends SystemService {
reason = REASON_LISTENER_CANCEL;
}
listener.onNotificationRemoved(sbnHolder, rankingUpdate, stats, reason);
} catch (android.os.DeadObjectException ex) {
Slog.wtf(TAG, "unable to notify listener (removed): " + info, ex);
} catch (RemoteException ex) {
Slog.e(TAG, "unable to notify listener (removed): " + info, ex);
}
@@ -11512,6 +11516,8 @@ public class NotificationManagerService extends SystemService {
final INotificationListener listener = (INotificationListener) info.service;
try {
listener.onNotificationRankingUpdate(rankingUpdate);
} catch (android.os.DeadObjectException ex) {
Slog.wtf(TAG, "unable to notify listener (ranking update): " + info, ex);
} catch (RemoteException ex) {
Slog.e(TAG, "unable to notify listener (ranking update): " + info, ex);
}