1、进入日志文件所在的文件目录,比如:
cd /opt/tomcat7/logs
2、通过命令打开日志,分析需求场景打开需要的日志
比如:
tail -f catalina.out
3、常用命令一:tail
比如:
tail -f test.log (循环查看文件内容)
4、按照行号查询:cat(过滤出关键字附近的日志)
cat -n test.log |grep "订单号"
然后使用 head -n 20 查看查询结果里的向前20条记录
5、按照时间日期查询,(查询出一段时间内的记录)
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log
查看该段时间内的日志
但是前提是用方法4试一下查询的哪个其实时间是不是存在
登录
kbkiss
1.查看日志常用命令
tail:
-n 是显示行号;相当于nl命令;例子如下:
tail -100f test.log 实时监控100行日志
tail -n 10 test.log 查询日志尾部最后10行的日志
tail -n +10 test.log 查询10行之后的所有日志
head:
跟tail是相反的,tail是看后多少行日志;例子如下:
head -n 10 test.log 查询日志文件中的头10行日志
head -n -10 test.log 查询日志文件除了最后10行的其他所有日志
cat:
tac是倒序查看,是cat单词反写;例子如下:
cat -n test.log |grep "debug" 查询关键字的日志
2. 应用场景一:按行号查看---过滤出关键字附近的日志
1)cat -n test.log |grep "debug" 得到关键日志的行号
2)cat -n test.log |tail -n +92|head -n 20 选择关键字所在的中间一行. 然后查看这个关键字前10行和后10行的日志:
tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录
3. 应用场景二:根据日期查询日志
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log
特别说明:上面的两个日期必须是日志中打印出来的日志,否则无效;
先 grep '2014-12-17 16:17:20' test.log 来确定日志中是否有该 时间点
4.应用场景三:日志内容特别多,打印在屏幕上不方便查看
(1)使用more和less命令,
如: cat -n test.log |grep "debug" |more 这样就分页打印了,通过点击空格键翻页
(2)使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析
如:cat -n test.log |grep "debug" >debug.txt
last-a 把从何处登入系统的主机名称或ip地址,显示在最后一行。
-d 指定记录文件。指定记录文件。将IP地址转换成主机名称。
-f <记录文件> 指定记录文件。
-n <显示列数>或-<显示列数> 设置列出名单的显示列数。
-R 不显示登入系统的主机名称或IP地址。
-x 显示系统关机,重新开机,以及执行等级的改变等信息
以下看所有的重启、关机记录
last | grep rebootlast | grep shutdown
history
列出所有的历史记录:
[zzs@Linux] # history
只列出最近10条记录:
[zzs@linux] # history 10 (注,history和10中间有空格)
使用命令记录号码执行命令,执行历史清单中的第99条命令
[zzs@linux] #!99 (!和99中间没有空格)
重复执行上一个命令
[zzs@linux] #!!
执行最后一次以rpm开头的命令(!? ?代表的是字符串,这个String可以随便输,Shell会从最后一条历史命令向前搜索,最先匹配的一条命令将会得到执行。)
[zzs@linux] #!rpm
逐屏列出所有的历史记录:
[zzs@linux]# history | more
立即清空history当前所有历史命令的记录
[zzs@linux] #history -c
cat, tail 和 watch
系统所有的日志都在 /var/log 下面自己看(具体用途可以自己查,附录列出一些常用的日志)
cat /var/log/syslog 等
cat /var/log/*.log
tail -f
如果日志在更新,如何实时查看 tail -f /var/log/messages
还可以使用 watch -d -n 1 cat /var/log/messages
-d表示高亮不同的地方,-n表示多少秒刷新一次。
该指令,不会直接返回命令行,而是实时打印日志文件中新增加的内容,
这一特性,对于查看日志是非常有效的。如果想终止输出,按 Ctrl+C 即可。
除此之外还有more,less,dmesg|more,这里就不作一一列举了,因为命令太多了,关键看个人喜好和业务需求.个人常用的就是以上那些.《Linux就该这么学》一起学习linux
linux日志文件说明
/var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
/var/log/secure 与安全相关的日志信息
/var/log/maillog 与邮件相关的日志信息
/var/log/cron 与定时任务相关的日志信息
/var/log/spooler 与UUCP和news设备相关的日志信息
/var/log/boot.log 守护进程启动和停止相关的日志消息
/var/log/wtmp 该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)