快速使用symbolicatecrash分析崩溃日志

前言

最近看到的很多文章都有效率这个词,意在程序员如何利用各种工具,来少做重复的事情;本着实践的态度,我写了一个脚本,用来快速分析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子目录中。

结尾

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AGI阅读 16,003评论 3 119
  • 我的肌肤细腻, 水滑过我的身体。 我的头发乌黑, 阳光照不进井里。 这里没有游鱼, 可我抓一把淤泥, 有个天地, ...
    一条水水水鱼阅读 412评论 0 0
  • 主要的语言有 c++ java php python go note.js c# java 中的3种框架 SSH...
    heiheiwanne阅读 345评论 0 1
  • 有感,电视剧《美好生活》 风雨吹来落九州,人生辛苦几时休。年年春在山眉瘦,日日鸥来水面幽。岁月无声去无影,芳华有梦...
    衣吹风阅读 1,001评论 0 1
  • 哪里的风景最美? 答案看图!
    彩凤知音阅读 138评论 0 1