MTKLOG简介和基本的分析流程

MTKLOG简介和基本的分析流程

常见异常分析

4.1 编译报错:

在build.log 中搜索unfinished 关键字,查找上文能够很快定位报错原因,或者搜索 error: 关键字能够直接定位相关报错文件(注意是搜索error和冒号)

4.2 程序崩溃(系统提示***已停止运行)

启动崩溃:一般情况为第三方预置缺少库文件,或者兼容性问题

应用间交互崩溃:startActivity找不多对应包名或者类名,或者无对应启动Activity的权限

APP内部逻辑空指针异常导致程序崩溃(NullPointerException)

以上三种情况都可在mtklog\mobilelog\APLog_2016_0505_115433\events_log 文件中搜索 crash 关键字快速定位问题点,crash_log中可查看对应问题产生原因:

Line 4201: 03-29 11:25:32.894092 939 949 I am_crash:[9337,0,com.bbm,954744388,Java.lang.UnsatisfiedLinkError,dalvik.system.PathClassLoader[DexPathList[[zip file"/system/framework/com.google.android.maps.jar", zip file"/data/app/com.bbm-1/base.apk"],nativeLibraryDirectories=[/data/app-lib/com.bbm-1,/data/app/com.bbm-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]]couldn’t find “libgnustl_shared.so”,Runtime.java,367]

Line 4202: 03-29 11:25:32.910190 939 949 Iam_finish_activity: [0,198242511,14,com.bbm/.ui.activities.StartupActivity,force-crash]

4.3 程序闪退:

外部原因:物理内存不足,被kill,events_log中搜索 low_memory 关键字,以确定低内存杀死程序,kernal_log 中有存在对应时间点被 low memory kill如下:

05-10 11:36:22.588540 923 1439 Iam_low_memory: 19

05-10 11:36:22.594222 923 938 I am_destroy_activity:[0,205784777,125,com.mediatek.filemanager/.MainFilemanagerActivity,finish-idle]

05-10 11:36:22.599262 923 923 I notification_cancel_all:[1000,923,com.mediatek.filemanager,0,0,0,5,NULL]

05-10 11:36:22.601661 923 923 I notification_cancel_all:[1000,923,com.android.providers.downloads,0,0,0,5,NULL]

05-10 11:36:22.650000 2036 2036 I auditd : type=1400 audit(0.0:347): avc:denied

{ read } for comm=“GpuAppSpectator” name="cmdline"dev=“proc” ino=10905 scontext=u:r:gas_srv:s0tcontext=u:r:system_app:s0 tclass=file permissive=0

05-10 11:36:22.869048 923 1910 Iam_proc_bound: [0,3769,com.cyin.himgr]

05-10 11:36:23.403472 1532 1532 Iam_on_resume_called:[0,com.android.hios.launcher3.Launcher]

05-10 11:36:23.650000 2036 2036 I auditd :type=1400 audit(0.0:348): avc: denied { read }

forcomm=“GpuAppSpectator” name=“cmdline” dev="proc"ino=10905 scontext=u:r:gas_srv:s0 tcontext=u:r:system_app:s0 tclass=filepermissive=0

05-10 11:36:23.965602 923 938 I am_destroy_activity:[0,102727749,125,com.android.packageinstaller/.InstallAppProgress,finish-imm]

05-10 11:36:23.972491 241 241 I sf_frame_dur:[com.android.packageinstaller/com.android.packageinstaller.InstallAppProgress,2375,9,1,0,1,0,0]

05-10 11:36:24.126262 923 1520 I netstats_mobile_sample: [0,0,0,0,0,0,0,0,0,0,0,0,-1]

05-10 11:36:24.126560 923 1520 I netstats_wifi_sample:[64660,844,36398,408,33328,147,33388,197,32228,126,33388,197,-1]

05-10 11:36:24.244910 923 934 I am_proc_died: [0,3665,com.android.packageinstaller]

05-10 11:36:24.245968 923 934 I wm_task_removed: [125,removeAppToken: last token]

05-10 11:36:24.246168 923 934 I wm_task_removed: [125,removeTask]

05-10 11:36:24.248168 923 934 I am_low_memory: 19

05-10 11:36:24.255912 923 923 I notification_cancel_all:[1000,923,com.android.packageinstaller,0,0,0,5,NULL]

05-10 11:36:24.318915 923 933 Inetstats_mobile_sample: [0,0,0,0,0,0,0,0,0,0,0,0,-1]

内部原因:main_log/sys_log 搜索Exception 或者 died关键字定位对应包名,进而定位问题

4.4 ANR问题

出现ANR应当提供traces.txt文件,直接在文件中搜索 cmd 关键字,定位问题点。锁定三个方向:memoryleak(是否为低内存),CPU block(CPU使用率过高)、iowait(IO流使用过于频繁)

(1)memoryleak:首先根据Android log搜索低内存相关 low_memory 关键字,以确定是否存在低内存现象

(2)CPU block:搜索对应包出现ANR前后 TOTAL 关键字前的百分比,若百分比接近100% 说明CPU饥饿导致了ANR:

(3)iowait:搜索iowait 关键字查看出现ANR前的百分比,若百分比过高,说明I/O流使用过于频繁导致ANR,此项需修改相关数据库的加载流程,如下:

4-0113:12:15.872 E/ActivityManager( 220): 5.5%21404/com.android.email: 1.3% user + 4.1% kernel / faults: 10 minor

04-0113:12:15.872 E/ActivityManager( 220): 4.3%220/system_server: 2.7% user + 1.5% kernel / faults: 11 minor 2 major

04-0113:12:15.872 E/ActivityManager( 220): 0.9%52/spi_qsd.0: 0% user + 0.9% kernel

04-0113:12:15.872 E/ActivityManager( 220): 0.5%65/irq/170-cyttsp-: 0% user + 0.5% kernel

04-0113:12:15.872 E/ActivityManager( 220): 0.5%296/com.android.systemui:0.5% user + 0% kernel

04-0113:12:15.872 E/ActivityManager( 220): 100%TOTAL:4.8% user + 7.6% kernel + 87% iowait

04-0113:12:15.872 E/ActivityManager( 220):CPUusagefrom 3697ms to 4223ms later:-- ANR后CPU的使用量

04-0113:12:15.872 E/ActivityManager( 220): 25%21404/com.android.email: 25% user + 0% kernel / faults: 191 minor

04-0113:12:15.872 E/ActivityManager( 220): 16% 21603/__eas(par.hakan: 16% user + 0% kernel

04-0113:12:15.872 E/ActivityManager( 220): 7.2% 21406/GC: 7.2% user + 0% kernel

04-0113:12:15.872 E/ActivityManager( 220): 1.8% 21409/Compiler: 1.8% user + 0% kernel

04-0113:12:15.872 E/ActivityManager( 220): 5.5%220/system_server: 0% user + 5.5% kernel / faults: 1 minor

04-0113:12:15.872 E/ActivityManager( 220): 5.5% 263/InputDispatcher: 0% user + 5.5% kernel

04-0113:12:15.872 E/ActivityManager( 220): 32%TOTAL:28% user + 3.7% kernel

相关科技文章

10年10亿刀赞助FIFA,沙特欲制霸2034世界杯
365日博体育备用

10年10亿刀赞助FIFA,沙特欲制霸2034世界杯

⌚ 07-01 👁️ 640
工作日计算器
365体育投注注册

工作日计算器

⌚ 07-04 👁️ 4918
家里进小偷了该怎么办
365bet提现多久到账

家里进小偷了该怎么办

⌚ 07-03 👁️ 6233
qq邮箱已失效是什么意思
365bet提现多久到账

qq邮箱已失效是什么意思

⌚ 07-02 👁️ 6728
草木之心面膜哪款好?草木之心面膜怎么样?
365日博体育备用

草木之心面膜哪款好?草木之心面膜怎么样?

⌚ 06-30 👁️ 7934

合作伙伴