1.业务系统访问量不是很大的时候,使用这个,有bug的地方操作下,直接看最后操作的日志
tail  -fn100  catalina.log   查询日志尾部最后100行的日志,并且随文件;
 
2.查看服务器启动情况,服务器启动报错,直接看前n行即可
head -n100  catalina.log   查询日志文件中的头10行日志;
 
3.按照关键字查找日志 (知道程序出问题的模块,而且有日志关键字的可以用此方法)
 
<1>.找到发错错误异常的行号
比如我们日志中关键字error表示错误
grep "error" -n access.log
或者cat -n catalina.log |grep "error" 
 
这时候就会显示很多匹配的行数,然后找到大约发生错误时间的对应行号
 
<2>通过行号查询对应行前后的内容
例如:得到"error"关键字所在的行号是102行. 此时如果我想查看这个关键字前10行和后10行的日志:
cat -n catalina.log |tail -n +92|head -n 20
tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录
 
或者 sed -n "92,112p" catalina.log
sed -n "开始行,结束行p" 文件名 查看文件多少行到多少行内容
 
4.通过时间查找 (不知道程序那里出问题了,只知道出问题的时间)
查询一个时间字符串是否存在
grep “2017-06-21 10:00” test.log
查询时间段内的日志
sed -n '/2017-06-21 09:25:55/,/2017-06-21 14:25:55/p' access.log
这个方法网上都说这个搞,但实际上我实践的时候不能查出来什么,不知道为什么,如果不行只能查时间字符串
grep "2017-06-21 09:25:55" -n access.log
 
cat -n test.log |grep "error" |more
5.查询日志结果如果太多可以分页到导出文件
<1>使用more和less命令, 如: cat -n test.log |grep "error" |more     这样就分页打印了,通过点击空格键翻页
<2>使用 >look.txt 将其保存到文件中,到时可以拉下这个文件分析.如:
cat -n test.log |grep "地形"  >look.txt
 
 
6.日志管理工具,以上方式只能解决服务器单节点问题,多节点日志分析不建议在服务器上一个个节点去查看,通常简单的是运维定时合并同一业务类型日志到某一个目录
 
同时也有一些开源的日志管理软件可以帮你管理日志,很简单的帮你实现分析,搜索
 
如开源的Graylog 2 Logstash Sumo Logic 收费的 Splunk  等

liunx查看日志 | 最实用命令和方法的更多相关文章

  1. liunx下查看日志最实用命令和方法

      1.业务系统访问量不是很大的时候,使用这个,有bug的地方操作下,直接看最后操作的日志,就是你刚才操作的地方,好好查bug吧 tail  -fn100  catalina.log   查询日志尾部 ...

  2. [转]linux查看日志文件内容命令

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  3. linux查看日志文件内容命令tail、cat、tac、head、echo

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  4. 【Linux】linux查看日志文件内容命令tail、cat、tac、head、echo

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  5. linux查看日志文件内容命令tail、cat、tac、head、echo、vi

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  6. linux查看日志文件内容命令tail、cat、tac、head、echo详解

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  7. 查看日志文件常用命令:tail,cat,tac,head,echo

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  8. linux查看日志文件内容命令(面试被常问到的问题)

    tail -f test.log 你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, linux 如何显示一个文件的某几行(中间几行) 从第3000行开始,显示1000行.即显示3 ...

  9. Linux查看日志三种命令

    第一种:查看实时变化的日志(比较吃内存) 最常用的: tail -f filename (默认最后10行,相当于增加参数 -n 10) Ctrl+c 是退出tail命令   其他情况: tail -n ...

随机推荐

  1. SQL提高查询效率的几点建议

    1.如果要用子查询,那就用EXISTS替代IN.用NOT EXISTS替代NOT IN.因为EXISTS引入的子查询只是测试是否存在符合子查询中指定条件的行,效率较高.无论在哪种情况下,NOT IN都 ...

  2. JVM类加载过程与双亲委派模型

    类加载过程 类加载过程为JVM将类描述数据从.class文件中加载到内存,并对数据进行解析和初始化,最终形成被JVM直接使用的Java类型.包含: 加载:获取该类的二进制字节流,将字节流代表的静态存储 ...

  3. vue3.0 vue.config.js 配置实战

    今天讲述一下vue-config.js配置,我们前面搭建好脚手架会发现,这个对比2.x版本少了很多东西,没有build的配置,也没有webpack的配置,那么问题来了,我们如何去开发我们的项目呢,比如 ...

  4. java之ReentrantLock详解

    前言 如果一个代码块被synchronized修饰了,当一个线程获取了相应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的释放,现在有这么一种情况,这个获取锁的线程由于要等待IO或者其他原 ...

  5. Stock Charts

    Description You're in the middle of writing your newspaper's end-of-year economics summary, and you' ...

  6. 第3章(3) do{}while(0)语句

    do {} while (0) 主要在宏定义后为语句中使用,比如: #define macrofun(a, b, c) \ do { \ if (a == 5) \ do_this(b, c); \ ...

  7. [JZOJ5178]【NOIP2017提高组模拟6.28】So many prefix?

    Description

  8. 算法---ALGO-3 Java K好数 蓝桥杯

    package Main; import java.io.InputStream; import java.util.Scanner; public class Main { public stati ...

  9. 为什么阿里巴巴Java开发手册中强制要求整型包装类对象值用 equals 方法比较?

    在阅读<阿里巴巴Java开发手册>时,发现有一条关于整型包装类对象之间值比较的规约,具体内容如下: 这条建议非常值得大家关注, 而且该问题在 Java 面试中十分常见. 还需要思考以下几个 ...

  10. VBA 在第二个sheet中查找第一个sheet中不存在的值

    VBA 在第二个sheet中查找第一个sheet中不存在的值  Sub Macro2() ' ' Macro2 Macro ' 宏由 Lizm 录制,时间: 2019/04/10 '   ' Dim ...