Hi
I am finding some issues with using log.wtf in case of exceptions
occurred.
In the defconfig file haven't enabled the
"CONFIG_NETFILTER_XT_MATCH_QTAGUID" and this is resulting in the stats
file not getting created and resulting in the following exception.
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: problem reading
network stats
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:
java.lang.IllegalStateException: problem parsing line: null
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:
313)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:
247)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.os.BatteryStatsImpl.getNetworkStatsDetailGroupedByUid(BatteryStatsImpl.java:
5734)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.os.BatteryStatsImpl.access
$100(BatteryStatsImpl.java:76)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.os.BatteryStatsImpl
$Uid.computeCurrentTcpBytesReceived(BatteryStatsImpl.java:2457)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.os.BatteryStatsImpl
$Uid.getTcpBytesReceived(BatteryStatsImpl.java:2446)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.os.BatteryStatsImpl.writeSummaryToParcel(BatteryStatsImpl.java:
5437)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.os.BatteryStatsImpl.writeLocked(BatteryStatsImpl.java:
4836)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.internal.os.BatteryStatsImpl.writeAsyncLocked(BatteryStatsImpl.java:
4818)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.server.am.ActivityManagerService.updateCpuStatsNow(ActivityManagerService.java:
1545)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: at
com.android.server.am.ActivityManagerService
$3.run(ActivityManagerService.java:1427)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: Caused by:
java.io.FileNotFoundException: /proc/net/xt_qtaguid/stats: open
failed: ENOENT (No such file or directory)
F BatteryStatsImpl: Caused by: java.io.FileNotFoundException: /proc/
net/xt_qtaguid/stats: open failed: ENOENT (No such file or directory)
In the BatteryStatsImpl.java file there is a file not found exception
and it is getting logged with log.wtf and internally it kills the
systemserver process.
private NetworkStats getNetworkStatsDetailGroupedByUid() {
5729 // NOTE: calls from BatteryStatsService already hold
this lock
5730 synchronized (this) {
5731 if (mNetworkDetailCache == null
5732 ||
mNetworkDetailCache.getElapsedRealtimeAge() > SECOND_IN_MILLIS) {
5733 try {
5734 mNetworkDetailCache = mNetworkStatsFactory
5735 .readNetworkStatsDetail().groupedByUid();
5736 } catch (IllegalStateException e) {
5737 // log problem and return empty object
5738 Log.wtf(TAG, "problem reading network
stats", e);
5739 mNetworkDetailCache = new
NetworkStats(SystemClock.elapsedRealtime(), 0);
5740 }
5741 }
5742 return mNetworkDetailCache
can anyone let me know
1. what is the need for killing the systemserver process with log.wtf
in case of file not found exception is observed. Is getting stats that
harmful?
2. Is it mandatory to enable CONFIG_NETFILTER_XT_MATCH_QTAGUID config
option or can i change exception logging to normal.
Thank you
Adi
--
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting