开发中常用日志搜索技巧
在我们的实际开发中,一般应用都部署在Linux上,为了后期方便排查bug或者记录代码执行的流程。对于开发者而言,遇到问题经常需要去看log文件(或者使用Kibana这样的工具),这里介绍几个开发常用而又重要的日志查找技巧。
Linux查看日志的几个常见命令
- grep
- head
- cat
- tail
- less
- ack
- sed
- vi
grep
grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
- 常见使用方法之: grep 2017010500345878 --color info.log
这行命令在info.log中搜索含有"2017010500345878"关键词的段落并且使用其他颜色标记关键词。
复制代码
优点:根据关键词快速方便定位并且打印出来段落的上下文。
head
head命令是用来查看具体文件的前面几行的内容,该命令默认是前10行内容;
- 常见使用方法之: head -50 info.log
查看info.log文件的前50行。
复制代码
优点:快速定位到文件的前多少行。
tail
tail命令是用来查看具体文件后面几行的内容,默认情况下,是查看该文件尾10行的内容;还可以使用 tail 来观察日志文件被更新的过程。使用 -f 选项,tail 会自动实时更新文件内容。
- 常见使用方法之: tail -f info.log
cat
cat命令是Linux下的一个文本输出命令,通常是用于观看某个文件的内容的.常用有三大功能:1.一次显示整个文件;2.从键盘创建一个文件。3.将几个文件合并为一个文件。这里我们只举例显示一个文件.
- 常见使用方法之: cat -n info.log
less
less(less) 命令可以对文件或其它输出进行分页显示
- 常见使用方法之: cat -n info.log
ack
ack是一个基于Perl的类似于grep的命令行工具,但是搜索速度更快,能力比grep更强。
- 常见使用方法之: ack -w order
在当前目录递归搜索单词”eat”,不匹配类似于”orderService”或”paymentOrder”的字符串.
复制代码
- 常见使用方法之: ack -w order
sed
sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。
- 常见使用方法之: sed -n '800,900' info.log
查看info.log文件800到900行之间的内容
复制代码
vi
使用找一个字符串,在vi命令模式下键入“/”,后面跟要查找的字符串,再按回车。vi将光标定位在该串下一次出现的地方上。键入n跳到该串的下一个出现处,键入N跳到该串的上一个出现处。
常见组合使用
使用[grep -n 异常 --color info.log ]查询到异常在文件中发生的行数,然后再看前后几十行日志的内容[sed -n '800,900' info.log].
总结
这些命令的功能都比较丰富,这里只是列出非常简单的一些用法,在一般的开发中都是频繁使用得到.具体的用法需要开自己总结使用自己喜欢使用的命令.(我这里的总结也会持续更新)
开发中常用日志搜索技巧相关推荐
- JS开发中常用的小技巧
1.获取指定范围内的随机数 1 2 3 function getRadomNum(min,max){ return Math.floor(Math.random() * (max - min ...
- php gridview,PHP编程:yii2-GridView在开发中常用的功能及技巧总结
<PHP编程:yii2-GridView在开发中常用的功能及技巧总结>要点: 本文介绍了PHP编程:yii2-GridView在开发中常用的功能及技巧总结,希望对您有用.如果有疑问,可以联 ...
- php页面开发,PHP网站开发中常用的8个小技巧
这篇文章主要介绍了PHP网站开发中常用的8个小技巧,本文讲解了命名.使用.PHP判断Form表单是否提交.PHP 获取字符串长度.PHP超全局对象等内容,需要的朋友可以参考下 PHP是一种用于创建动态 ...
- java开发常用jar包_Java开发中常用jar包整理及使用
本文整理了我自己在Java开发中常用的jar包以及常用的API记录. 一.common-lang3 简介:一个现在最为常用的jar包,封装了许多常用的工具包 依赖: org.apache.common ...
- JAVA 开发中常用的工具有哪些?
Java开发中常用的工具有以下几种: Eclipse:一款非常流行的开发工具,提供了很多方便的功能,如代码自动补全.调试.版本控制等. IntelliJ IDEA:一款功能强大的Java集成开发环境, ...
- 浅谈实际开发中常用的分布式事物处理
浅谈实际开发中常用的分布式事物处理 文章目录 前言 一.分布式事物 二.常用方案 1.使用记录表+mq机制 前言 随着微服务的流行,越来越多系统不在是单体结构,根据业务和功能拆分成不同微服务,这就导致 ...
- WordPress开发中常用代码(必备)
很多人在WordPress开发中常用代码,WordPress 相比其它网站程序,最突出的优势:主题模板多,插件多,相关技术文章多,只要你想到的功能,都可以通过插件或者代码实现.现在分享下WordPre ...
- Google和Baidu常用的搜索技巧--转
原文链接:http://mp.weixin.qq.com/s?__biz=MjM5NTY0MTY1OQ==&mid=2654509772&idx=1&sn=754454e374 ...
- php开发中常用函数总结,PHP开发中常用函数总结
PHP开发中常用函数总结 发布于 2014-10-31 08:34:03 | 48 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext Preproc ...
- 前端开发中常用设计模式-总结篇
本文是向大家介绍前端开发中常用的设计模式,它使我们编写的代码更容易被复用,也更容易被人理解,并且保证代码的稳定可靠性. 1.什么是设计模式 通俗来讲,就是日常使用设计的一种惯性思维. 因为对应的这种思 ...
最新文章
- 监测SQLServer数据库中表的数据变化 方案
- Ubuntu 16.04下使用VMware安装CentOS 6.9然后在里面再安装KVM之后配置网桥无法上网的问题...
- hibernate mysql分页_求struts+hibernate实现mysql分页的详细代码
- 关系代数——附加的关系运算(1)
- code warri_我参加了有史以来的第一届Warri Tech宣传活动。 这是我学到的。
- 图书管理系统~简单流程
- 【Python】利用pip下载Django超时失败的解决方法
- Codeforces Round #617 (Div. 3) String Coloring(E1.E2)
- NUC1371 Who's in the Middle【中位数+排序】
- 安卓传感器全解:注册、注销传感器、监听传感器,距离传感器、方向传感器、陀螺仪、加速计、磁场、气压传感器
- Json.NET特殊处理64位长整型数据
- python中append,pop,extend,remove的区别
- jdk1.8中文帮助文档
- PS导出字幕的一些细节
- 前端加密js库--CryptoJs
- 登录账号提示服务器出错怎么办,教育平台号和密码都正确,就是显示用户名和或密码错误,登不上怎么办呀?...
- 计算机怎么打开网络共享,如何开启Window7的媒体流共享(开启电脑 DLNA 共享)...
- golang-ffmpeg-goav:视频拉流解码成YUVJ420P
- 帮你一个简单的微信怎么刷票及微信如何刷票技巧「图文教程」
- 数据库如何转身云原生数据库