bytedance / memory-leak-detector

Other
1.09k stars 178 forks source link

Python 脚本对 addr2line 输出的处理,遗漏了函数信息 #49

Open myzhan opened 5 months ago

myzhan commented 5 months ago

目前是这样,第二行只有文件名

def addr_to_line(address, symbol_path):
    # for aarch64
    status, output = subprocess.getstatusoutput('aarch64-linux-android-addr2line -C -e %s -f %s' % (symbol_path, address))
    if status != 0:
        print(output)
        raise Exception('execute [aarch64-linux-android-addr2line -C -e %s -f %s] failed' % (symbol_path, address))
    return output.split('\n')[1]
def addr_to_line(address, symbol_path):
    # for aarch64
    status, output = subprocess.getstatusoutput('aarch64-linux-android-addr2line -C -e %s -f %s' % (symbol_path, address))
    if status != 0:
        print(output)
        raise Exception('execute [aarch64-linux-android-addr2line -C -e %s -f %s] failed' % (symbol_path, address))
    lines = output.split('\n')
    return "\t".join(lines)

建议改成这样,把函数名也带上,避免部分情况,只有函数名,没有文件名的时候,显示信息不全。

WangHHY19931001 commented 3 weeks ago

看起来你可以提交一个pr

myzhan commented 3 weeks ago

这个项目感觉已经不维护了。

WangHHY19931001 commented 3 weeks ago

这个项目感觉已经不维护了。

疑似原来的团队没了