最近分析内存泄漏、碎片的情况,用stackwalker输出内存使用异常处的栈进行分析。
遇到问题:将多行栈文本拼凑后, print 出来的结果不对,好像删除了一些
早上起来无意中想到 awk 处理文本时,如果 print 文本行中含反斜杠(转意符)的话,输出会有问题,需要先对文本进行预处理,替换反斜杠。
解决问题了,继续用脚本来分析内存栈文本
首先,根据栈目录信息,将文本分隔成几个文本;
然后,分别分析每大块中的内存异常情况。
对于原始输出栈文本,栈去重方法:将调用栈合并成一行,作为key,累计每个栈使用内存数,及相同栈的出现次数
为了解决分析后输出格式化的栈,需要在调用栈每行间加入特殊分隔符,将来替换成换行用
遇到问题:将多行栈文本拼凑后, print 出来的结果不对,好像删除了一些
早上起来无意中想到 awk 处理文本时,如果 print 文本行中含反斜杠(转意符)的话,输出会有问题,需要先对文本进行预处理,替换反斜杠。
解决问题了,继续用脚本来分析内存栈文本
首先,根据栈目录信息,将文本分隔成几个文本;
然后,分别分析每大块中的内存异常情况。
对于原始输出栈文本,栈去重方法:将调用栈合并成一行,作为key,累计每个栈使用内存数,及相同栈的出现次数
为了解决分析后输出格式化的栈,需要在调用栈每行间加入特殊分隔符,将来替换成换行用