函数映射表
配置位置,打包以后需要保留
matrix {
trace {
enable = true
baseMethodMapFile = "${project.projectDir}/matrixTrace/methodMapping.txt"
blackListFile = "${project.projectDir}/matrixTrace/blackMethodList.txt"
}
}
格式
方法id,方法accessType,类名,方法名,方法签名
1,4,sample.tencent.matrix.battery.stats.BatteryStatsSubProcActivity onCreate (Landroid.os.Bundle;)V
主要关键的就是方法id与方法名
异常堆栈
{
"machine": "HIGH",
"cpu_app": 0,
"mem": 7883890688,
"mem_free": 4016924,
"detail": "NORMAL",
"cost": 1006,
"scene": "sample.tencent.matrix.trace.TestFpsActivity",
"stack": "0,1048574,1,1006\n1,243,1,1000\n",
"stackKey": "243|",
"tag": "Trace_EvilMethod",
"process": "sample.tencent.matrix",
"time": 1683771521931
}
堆栈格式为
stack层级,方法id,方法执行次数,方法执行总耗时
我们只需要根据方法耗时,找到对应的方法id即可,再通过对应表找到对应的函数