Linux日志分类

Linux日志分类

 

在Linux系统中,有三个主要的日志子系统:

 

连接时间日志

由多个程序执行,把记录写入到/var/log/wtmp和/var/run/utmp,login等程序更新wtmp和utmp文件,使系统管理员能够跟踪谁在何时登录到系统。

 

进程统计日志

进程统计日志由系统内核执行。当一个进程终止时,为每个进程往进程统计文件(pacct或acct)中写一个记录。进程统计的目的是为系统中的基本服务提供命令使用统计。

 

错误日志

错误日志由syslogd(8)执行。各种系统守护进程、用户程序和内核通过syslog(3)向文件/var/log/messages报告值得注意的事件。另外有许多UNIX程序创建日志。像HTTP和FTP这样提供网络服务的服务器也保持详细的日志。

 

 

使用linux查看日志排除bug是不少开发和测试人员的必备技能,为了更好的使用,所以百度结合自己经验总结一下常用的日志查看部分相关命令。大家可以随时更新提出质疑一同进步。

一、常用命令

tail head cat tac less more

  • tail:

      n  是显示行号相当于nl命令
      tail -100f test.log      实时监控100行日志
      tail  -n  10  test.log   查询日志尾部最后10行的日志;
      tail -n +10 test.log    查询10行之后的所有日志;
    
  • head

      跟tail是相反的head是看前多少行日志
      head -n 10  test.log   查询日志文件中的头10行日志;
      head -n -10  test.log   查询日志文件除了最后10行的其他所有日志;
    
  • cat

      tac是倒序查看是cat单词反写
      cat -n test.log |grep "debug"   查询关键字的日志
    
  • more

    是将文件从第一行开始,根据输出窗口的大小,适当的输出文件内容。当一页无法全部输出时,可以用“回车键”向下翻行,用“空格键”向下翻页。退出查看页面,请按“q”键。另外,more还可以配合管道符“|”(pipe)使用,例如:ls -al | more
    
    more的语法:more 文件名
    Enter 向下n行,需要定义,默认为1行
    Ctrl f 向下滚动一屏
    空格键 向下滚动一屏
    Ctrl b 返回上一屏
    = 输出当前行的行号
    :f 输出文件名和当前行的行号
    v 调用vi编辑器
    ! 命令 调用Shell,并执行命令
    q 退出more
    
  • less

    less与more类似,使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且 less 在查看之前不会加载整个文件。
    less log2013.log 查看文件
    ps -ef | less   ps查看进程信息并通过less分页显示
    history | less   查看命令历史使用记录并通过less分页显示
    less log2013.log log2014.log   浏览多个文件
    
     常用命令参数:
    -b <缓冲区大小> 设置缓冲区的大小
    -g 只标志最后搜索的关键词
    -i 忽略搜索时的大小写
    -m 显示类似more命令的百分比
    -N 显示每行的行号
    -o <文件名> 将less 输出的内容在指定文件中保存起来
    -Q 不使用警告音
    -s 显示连续空行为一行
    /字符串:向下搜索"字符串"的功能
    ?字符串:向上搜索"字符串"的功能
    n:重复前一个搜索(与 / 或 ? 有关)
    N:反向重复前一个搜索(与 / 或 ? 有关)
    b 向后翻一页
    h 显示帮助界面
    q 退出less 命令
    
      在 less 查看日志文件时:
      一般流程是:
      cd /opt/logs
      export LANG=zh_cn.utf-8     有时候使用less命令会发现乱码时使用  locale可查看当前设置
      less -mns newecc-all.log-2018-05-28    显示行号百分比和空行会比较直观
      按g到 第一行
      shift + g 跳转到最后一页 
      ? 和  /  后面加检索内容都可以进行当前文本关键字的查找  shift+n/n 分别是向下/上查询此关 
      键字内容
      

Linux日志分类

上一篇:Linux的目录结构详情


下一篇:Linux环境变量和用户提权