zoukankan      html  css  js  c++  java
  • 《Linux系列》- 查看Linux日志

    前言

      作为一名优秀的全栈工程狮,难免要跟运维打交道的。而查看生产日志,使我们快速定位、查询生产异常的基本操作。下面我就介绍一下,我在日常维护中,经常用到查看日志的命令。

      注:我使用的是SecureCRT来对日志进行跟踪、查看。

    1、SecureCRT配置

      我是通过SecureCRT来查看服务器日志的。这里安装就不讲了,讲SecureCRT的配置吧。

     

       到这里就配置好了,双击对应的Session就可以连接了。首次接入,还需要登录密码,如下。

     

       最后一步,处理一下中文乱码:

      配置:

      OK之后,再重新打开 Session 就可以了。

    2、查看日志

      由于正式环境上用户量大,每天都会产生大量的日志,所以我们往往会将当天除外的日志,统统压缩存放起来。

      查看当天日志,常用命令如下:

      ● 简单查询:

         cd /(文件名)       进入到某文件

        vi /(文件名)   打开日志

         ls       查看当前目录下所有文件

         /字符     检索字符

      ● 根据关键字查询

       $ cat -n mobile...30-20.log |grep 'key1' |grep 'key2' |less

       cat 主要有三个功能

        1.一次显示整个文件。$ cat   filename~,

        2.从键盘创建一个文件。$ cat  >  filename

        注:只能创建新文件夹,不能编辑原有文件夹;

        3.将几个文件合并为一个文件。$cat   file1   file2  > file"t?=\

       grep 主要是用于匹配关键字上下几行

        1.同时匹配多个关键字;

        $ grep -5 'key1|key2|key3' mobile...30-20.log   // 满足(key1/key2/key3)任一条件,则匹配、打印前后5行;

        $ grep -C 5 'key1|key2|key3' mobile...30-20.log  // 打印匹配行的前后5行

        $ grep -A 5 'key1|key2|key3' mobile...30-20.log  // 打印匹配行的后5行

        $ grep -B 5 'key1|key2|key3' mobile...30-20.log  // 打印匹配行的前5行

        $ grep -5 'key1' |grep 'key2' |grep 'key3' mobile...30-20.log   

                                // 同时满足(key1&key2&key3),则匹配;

        匹配到关键行之后,我们再根据 线程号+时间 进一步匹配,就可以找到我们想要的日志,如下:

        cat -n mobile...30-20.log | grep '09:01:22' | grep 'catalina-exec-64]' | less

       $ tail -n +31 mobile...30-20.log |less 匹配第31行 之后的日志。

          tail -f mobile...30-20.log          匹配文件的尾部日志(默认10行,即上面的 -n 10)。

          tail -n 20 mobile...30-20.log       匹配文件的最后20行日志。

        tail -r -n 10 mobile...30-20.log      倒序显示文件的最后10行日志。

       -n 参数

        -n 或 --number        由 1 开始对所有输出的行数编号;

        -b 或 --number -nonblank    与 -n 相似,只是不对空白行进行编号;

        -s 或 --squeeze-blank        当遇到有连续两行以上的空白行,就代换为一行的空白行。

        -v 或 --show-nonprinting

        

      $ head -n 10 mobile...30-20.log |less  查询文件中的头10行日志

      $ head -n -10 mobile...30-20.log |less   查询文件中除了最后10行的其他所有日志

       

      $ cat -n test.log |grep "debug" |more   分页打印

      $ cat -n test.log |grep "debug" >debug.txt   可以保存到 debug.txt 文件中,到时可以拉下这个文件分析;

    3、

      

    4、

      

    5、

     小结

     

  • 相关阅读:
    JS LeetCode 1423. 可获得的最大点数简单题解
    SpringBoot 学集 (第六章) Docker
    Linux 学记 (第三章)
    Linux 学记 (第二章)
    Linux 学记 (第一章)
    SpringBoot 学集 (第五章) Web开发续
    SpringBoot 学集 (第四章)Web开发
    SpringBoot 学集 (第三章) 日志框架
    SpringBoot 学集 (第二章) 配置文件
    SpringBoot 学集 (第一章)
  • 原文地址:https://www.cnblogs.com/qiuhaitang/p/12597468.html
Copyright © 2011-2022 走看看