From 4345c0d3f5fa313e4ad1075e17be9c621c5d3982 Mon Sep 17 00:00:00 2001 From: Philip Cuadra Date: Wed, 17 Aug 2016 18:02:24 -0700 Subject: [PATCH] Add more tracing to service lifecycle Add tracing for each individual service in the boot phase events. Bug 30758864 Tested by looking at a systrace Change-Id: Iaebefb7a5658920e6289e3a0398c42705372d572 --- services/core/java/com/android/server/SystemServiceManager.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/services/core/java/com/android/server/SystemServiceManager.java b/services/core/java/com/android/server/SystemServiceManager.java index 90f507c146bf3..fb8a8154e13e4 100644 --- a/services/core/java/com/android/server/SystemServiceManager.java +++ b/services/core/java/com/android/server/SystemServiceManager.java @@ -138,6 +138,7 @@ public class SystemServiceManager { final int serviceLen = mServices.size(); for (int i = 0; i < serviceLen; i++) { final SystemService service = mServices.get(i); + Trace.traceBegin(Trace.TRACE_TAG_SYSTEM_SERVER, service.getClass().getName()); try { service.onBootPhase(mCurrentPhase); } catch (Exception ex) { @@ -146,6 +147,7 @@ public class SystemServiceManager { + ": onBootPhase threw an exception during phase " + mCurrentPhase, ex); } + Trace.traceEnd(Trace.TRACE_TAG_SYSTEM_SERVER); } } finally { Trace.traceEnd(Trace.TRACE_TAG_SYSTEM_SERVER);