美文网首页
快速使用symbolicatecrash分析崩溃日志

快速使用symbolicatecrash分析崩溃日志

作者: 己庚辛壬癸 | 来源:发表于2018-09-07 15:21 被阅读43次

前言

最近看到的很多文章都有效率这个词,意在程序员如何利用各种工具,来少做重复的事情;本着实践的态度,我写了一个脚本,用来快速分析iOS开发中的crash日志。

对于iOS开发中的崩溃日志分析,这里有篇文章介绍的十分详细:iOS开发技巧 - 崩溃分析

脚本

#!/bin/bash

# 检查 symbolicatecrash
echo "正在检查symbolicatecrash路径..."
symbolicatecrashPath=$(ls /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash)
if [[ ${#symbolicatecrashPath} -lt 1 ]];
then
    echo "未发现symbolicatecrash,请保证当前为Xcode8.0以上版本"
    exit 0
fi

# 检查当前路径是否有dSYM
echo "正在检查dSYM文件是否存在..."
dSYMPath=$(ls | grep \\.dSYM)
if [[ ${#dSYMPath} -lt 1 ]];
then
    echo "脚本所在目录无dSYM文件,请检查后重试"
    exit 0
fi

# 检查当前文件夹是否存在.crash文件,并设置环境变量
files=$(ls | grep \\.crash | cut -f 1 -d .)
if [[ ${#files} -gt 0 ]];
then
    echo "正在设置环境变量..."
    export DEVELOPER_DIR=/Applications/XCode.app/Contents/Developer
else
    echo "未发现.crash结尾的日志文件"
    exit 0
fi

echo "正在创建输出文件夹..."
mkdir symbol

# 根据DSYM生成symbol
for  name in $files
    do
        echo "正在分析日志:$name.crash..."
        $symbolicatecrashPath ./$name.crash ./dSYMPath > $(pwd)/symbol/$name"_symbol.crash"
    done
echo "已经将分析后的文件输出到symbol文件夹下"

大家可以下载脚本或新建一个文件,将其命名为do.sh并将上述内容复制到其中,然后将.dSYM文件、.crash文件和该脚本放在同一个文件夹下(不需要将symbolicatecrash放在其中),然后进行如下步奏:

  • 1、打开终端,进入到脚本所在文件夹;
  • 2、在终端中输入:sh do.sh,等待执行完成,分析后的文件会在当前目录的symbol子目录中。

结尾

希望这个脚本能在以后分析崩溃日志时节约一些时间,当然更重要的是践行“效率”这个思想。

相关文章

网友评论

      本文标题:快速使用symbolicatecrash分析崩溃日志

      本文链接:https://www.haomeiwen.com/subject/qrscgftx.html