解密android日志xlog,mars的xlog日志文件解析以及日志查看工具介绍

编程知识 更新时间:2023-04-17 18:19:44

文章背景

有时候轮岗或者测试反馈bug时,执行python脚本不能快速的解析腾讯mars库的xlog文件,如果能像普通txt文件一样鼠标右键就可以打开就好了,因此本文介绍的主题之一就是如何快速执行解密xlog文件。

另外,日志里面有大量无关信息,而且普通文本么有颜色区分,很难去用肉眼看。如果用notepad++之类是零散的日志过滤,没法去分析某个流程的业务逻辑是否有问题。比如你需要tagA找到满足A条件下的日志,然后又想知道A附近有没有B的日志,此时notepad++无法做到。notepad++需要进行两次tag的过滤,而且每次看某一个tag时,无法清晰的看到另一个tag的日志。下面会介绍一种有用的工具,解放肉眼,并且可以做到共享配置,方便别人轮岗分析你的模块。

关于xlog文件解密

总共需要3个文件logdecode.bat、logdecode.reg、decode_log_file_20181013新版本.py

image.png

我接下来要配置三个文件,以便完成鼠标右键使用的光荣使命

image.png

我们接下来需要一个bat可执行文件,我们用它来进行python脚本的执行。

logdecode.bat批处理文件的内容如下,主要是申明你的python安装路径,以及你的python脚本路径

c:\Python27\python.exe C:\Users\Administrator\Desktop\decode_mars_log_file旧版.py %*

下面这个是python解密文件,在官方脚本的基础上,增加了对BOM-UTF-8,避免下面介绍的日志查看工具无法显示中文的问题。

这个函数稍作修改,避免日志分析工具看到中文是乱码

def ParseFile(_file, _outfile):

fp = open(_file, "rb")

_buffer = bytearray(os.path.getsize(_file))

fp.readinto(_buffer)

fp.close()

startpos = GetLogStartPos(_buffer, 2)

if -1 == startpos:

return

outbuffer = bytearray()

while True:

startpos = DecodeBuffer(_buffer, startpos, outbuffer)

if -1 == startpos: break;

if 0 == len(outbuffer): return

fpout = open(_outfile, "wb")

fpout.write(codecs.BOM_UTF8)

fpout.write(outbuffer)

fpout.close()

image.png

最后重要的一步是如何放到鼠标右键菜单里,配置下面的.reg配置表文件

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\新版本解密Log\command]

@="logdecode.bat \"%1\""

接下来你只要双击reg文件运行即可,然后你可以看到鼠标右键已经存在了。如果你logdecode.bat里配置错误路径或者其它,请清除解密日志的注册表项,然后再重新注册下。

现在你可以用鼠标右键快速解析需要的日志文件,他会在当前目录生成解析后的文件,可以多选哦。

image.png

关于日志查看

TextAnalysisTool.NET ,这个是我们要用到的日志查看工具,我用的是2016的版本。下载地址

image.png

大概的应用界面如下,在加入过滤器后。

image.png

图中橙色之类的就是过滤条件,可以用正则去匹配,满足条件就可以标记文本颜色或者行背景色。

右上角有个filters,就是添加过滤tag的地方。

增加的tag都显示在下面,可以取消勾中,以便只使用部分tag去过滤标记日志。

image.png

如果你想要没被tag匹配中的日志行消失,那么按Ctrl+H快捷键,即可隐藏。如果恢复到原样,再按一次即可。现在你可以同时查看不同条件下满足的日志组成的一套流程日志了,可以分析各种业务流程,如activity生命周期、发送文件流程,推送消息是否收到并且通知到业务层刷新等等

image.png

如果你想回到某一个tag标记的颜色的日志行附近,你点击选中那一行,然后按Ctrl+H,这样恢复的界面就是在这一个日志行附近,非常方便。

如果你想保存这一次分析某个问题的过滤条件,可以点击下面这里

image.png

里面有Save filter选项,然后编辑你的tat过滤tag的文件的名字,保存即可。以后你可以拷贝给别人,或者自己再次选择使用,比如下面这种

image.png

更多推荐

解密android日志xlog,mars的xlog日志文件解析以及日志查看工具介绍

本文发布于:2023-04-14 02:44:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/06b287a24bc051af9df24651ab768ad4.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:日志   文件   工具   android   mars

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 74364文章数
  • 14阅读数
  • 0评论数