抓取底层日志方法

# 简介 抓取调试日志是最常用的调试手段之一。合宙Cat.1模块日志类型分为3种: 1. 应用层日志:用户应用脚本和lib的部分打印,主要用来调试业务层的一些问题。大部可以由用户自行查看分析。 2. 底层AP日志:底包core层的调试日志,这个日志通常只能由官方技术人员来进行分析。 3. 底层CP日志:网络协议栈的调试日志,这个日志通常只能由官方技术人员来进行分析。 日志的输出接口可以由Cat.1模块的USB口,Hostuart口进行输出调试日志。抓日志的工具大部分情况下用luatool调试工具就可以。 # 用Luatools V2工具抓底层日志 合宙官方调试工Luatools V2,除了可以进行升级固件操作,还可以用来抓取底层的日志,详细操作如下: 1. 下载[luatoolsV2](https://doc.openluat.com/wiki/21?wiki_page_id=2070 "luatoolsV2")后打开,并且允许工具升级。 2. 安装[USB驱动](https://doc.openluat.com/wiki/21?wiki_page_id=2070 "USB驱动") 3. 用USB线直接连接模块的USB管脚到PC的USB接口 ![USB.jpg](https://cos.easydoc.net/22753220/files/kzxuuho0.jpg) 4. 建议禁用电脑RNDIS,再打开luatools,勾选4G USB打印 ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_42120.png) 5. 给模块上的会自动有打印 ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_38565.png) 6. 在选项中做如下修改 ![图片.png](https://cdn.openluat-luatcommunity.openluat.com/images/20210519202544740_图片.png) 7. 在luatool v2\log\4gdiag目录下可以看到正在自动生成.bin和.tra文件,大小正在正在增加说明正在生成底层日志 ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_79277.gif) 8. 需要停止,只需要关闭luatool即可 其中.bin为AP日志,.tra为CP日志 # 从HOST UART接口抓AP日志 在一些应用场合,USB被占用了,无法通过USB在抓底层日志的情况下,还可以通过HOST UART接口抓取AP日志,步骤如下: 1. 下载[cooltool](http://openluat-erp.oss-cn-hangzhou.aliyuncs.com/erp_site_file/product_file/[%E9%9D%9E%E9%87%8F%E4%BA%A7%E7%89%88%E6%9C%AC]sw_file_20210426163005_cooltools-win32_custom_2020-05-09-6c0c5e17.7z "cooltool")工具 2. 用USB转TTL数据线连接模块的UART1管脚(用来发送AT命令打开HOST日志功能,也可以用USB虚拟出来的AT口发送) ![image.png](https://cos.easydoc.net/22753220/files/l0gd5r44.png) 3. 模块开机后,通过串口工具发AT^TRACECTRL=0,1,1 这个指令,将日志打开之后关机 ` 注意:AT^TRACECTRL=0,1,1是永久生效的,可以断电保存` AT^TRACECTRL的指令说明如下: ![undefined](https://cdn.openluat-luatcommunity.openluat.com/images/20210701173223831_Snipaste_2021-07-01_17-31-16.png "undefined") 2. 用USB转TTL数据线连接模块的HOST UART管脚(抓取AP日志) ![image.png](https://cos.easydoc.net/22753220/files/l0gd7s89.png) ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_50568.png) ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_90011.png) 4.打开trace栏 ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_13067.gif) 5. 模块开机,日志会在trace栏中打印出来 ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_23567.gif) 6. 抓到想要的日志后,点击保存即可 ![](http://doc.openluat.com/api/static/editormd/php/../uploads/5_54285.gif) 7. coolwatcher 保存日志为bin文件,再打开时间不对,trc格式文件正常,默认保存trc格式 ------------ # 从ZSP_UART口抓取CP日志 在USB被占用的情况下同样可以通过ZSP_UART串口来抓取日志,步骤如下: 1. 准备工作: - 高速串线,由于ZSP_UART固定波特率8000000,所以切记要选择高速的串口芯片,这里建议使用FT4232串口芯片。 - 抓日志的专用工具:[ArmTracer_V6.1.5_User.7z](https://cdn.openluat-luatcommunity.openluat.com/attachment/20201111155639752_ArmTracer_V6.1.5_User.7z) 2. 找到模块的ZSP_UART_TXD管脚,这个专门的CP日志输出串口,不能用于其他用处,只有TX,没有RX,但这就够了,管脚如下所示: ![ZSP.png](https://cos.easydoc.net/22753220/files/kzxv7ga3.png) 3. 通过通用串口(可以是UART1或者USB虚拟的AT串口)发AT指令 AT^TRACECTRL=1,1,0 4. 打开ArmTracer 做如下设置 [![undefined](https://cdn.openluat-luatcommunity.openluat.com/images/20201111160216438_微信图片_20200915093707.png "undefined")](undefined "undefined") `注意:其他的设置保持不变` 5. 点击开始后,设置好日志保存路径 [![undefined](https://cdn.openluat-luatcommunity.openluat.com/images/20201111160507009_QQ截图20201111160434.png "undefined")](undefined "undefined") 6. 点击OK后,会看到有日志打印出来 [![undefined](https://cdn.openluat-luatcommunity.openluat.com/images/20201111160543917_QQ截图20201111152644.png "undefined")](undefined "undefined") 7. 保持运行,直到设备出现想要的异常现象后,点击停止打印,然后日志会自动保存在之前设置好的路径下面 [![undefined](https://cdn.openluat-luatcommunity.openluat.com/images/20201111160657734_QQ截图20201111152908.png "undefined")](undefined "undefined")