美文网首页软件测试基础性能测试测试开发那些事儿
使用grep命令或notepad++ 快速搜索日志的实用技巧

使用grep命令或notepad++ 快速搜索日志的实用技巧

作者: 测试开发Kevin | 来源:发表于2021-11-11 10:32 被阅读0次

    在做测试时,我们经常会遇到日志分析的统计工作,那么如何高效的完成日志分析功能呢?这里以统计研发同学应用日志中的api耗时情况为例进行讲解。

    通常思路如下:

    1.利用shell脚本搜索(服务器端直接搜索日志,以grep命令为例)

    2.编码解析(不在本文讨论范围)

    3.通过文本编辑器搜索(windows 系统中搜索日志,以notepad++为例)

    需求1:模拟统计日志中消耗时长在300ms左右的日志记录个数

    NotePad++

    搜索>查找

    选中底部的“正则表达式”,输入正则3\d{2},点击右侧的计数,即可统计到搜索结果。

    其中\d 在正则表达中表示数字,{2}表示出现两次,\d{2}表示任意两位数,加上前面的3则表示以3开头的任意三位数。

    shell脚本

    使用下面的脚本可以轻松统计出上述文档中查找结果出现的次数

    grep -o '3[0-9]\{2\}' test.log |wc -l

    结果显示 1

    这里需要注意一下,shell 正则中不支持\d,因此用[0-9]代替,表示0-9中的任意数字

    grep

    其中grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

    使用grep -o '3[0-9]\{2\}' test.log ,输出结果是

    340

    grep -o只显示匹配的字符串;如果一行中有多个匹配结果,则会换行输出匹配到的结果 ,如果文档中内容为

    time:340,390

    使用grep -o '3[0-9]\{2\}' test.log ,输出结果是

    340

    390

    wc -l解释

    Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。

    wc -l 是统计行数的含义

    管道符“|”

    Linux 管道使用竖线|连接多个命令,这被称为管道符,它将前面一个进程的输出直接作为下一个进程的输入。

    grep -o '3[0-9]\{2\}' test.log |wc -l 的含义是把grep -o '3[0-9]\{2\}' test.log 搜索到的内容作为wc -l统计内容的输入。

    需求2:模拟统计消耗时长在700-900左右日志记录个数

    NotePad++

    正则表达如下,如果大家想了解更多的正则表达式知识,在网上随意搜索即可

    shell脚本

    使用下面的脚本可以轻松统计出上述文档中查找结果出现的次数

    grep -o '[7-9][0-9]\{2\}' test.log |wc -l

    好了,以上就是搜索日志的一些常用技巧,相信大家了解以后,在实际工作中查看日志的效率一定会大幅提升!原创不易,如果你喜欢本文,请帮忙点赞转发!

    相关文章

      网友评论

        本文标题:使用grep命令或notepad++ 快速搜索日志的实用技巧

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