• 常用的日志截取方法


    1.通过关键词截取日志
    适用场景:我想要的日志中要有关键词MessageHandler: get one TextMessage
    命令:grep 'MessageHandler: get one TextMessage' server.out -A 100 -B 100 >~/server_part.log  
    解释:截取batch_today.log中关键词的前100行和后100行的日志,并将截取的日志保存到当前登录用户的“家目录”下的batch_part.log文件中(以下雷同)

    如何查家(home)目录在哪?
    [weblogic@DCCKWZBS2-R440 life.ulic.com]$ cd ~
    [weblogic@DCCKWZBS2-R440 ~]$ pwd
    /home/weblogic

    2.通过时间截取日志
    适用场景:我的某个操作是在2021-01-21 10:00到2021-01-21 11:00之间产生的,我要取在此期间的日志
    命令:sed -n '/2021-01-20 10:00/,/2021-01-21 11:00/p' server.out >~/server_part.log
    解释:截取server.out中2021-01-20 10:00到2021-01-21 11:00之间产生的日志,并将截取的日志保存到当前登录用户的home目录下的server_part.log文件中

    3.通过日志行数截取日志
    适用场景:我发现页面中某个地方有报错,我想再操作一次,取这一次操作产生的日志
    命令:
    分两步
    1.进入日志目录,获取日志文件当前的总行数(server.out 为日志文件)
    wc -l server.out
    获知server.out共有1465018行
    2.页面操作后,截取第一步获取到的行数之后的日志
    sed -n '1465018,$p' server.out > ~/server_part.log
     
     

    [mispread@misptest ~]$ cat cut_out_log.sh
    #!/usr/bin/ksh
    date_time=`date +'%Y-%m-%d-%H%M'`
    log_name='server.out'
    num_log=`wc -l ${log_name} | awk '{print $1}'`
    num_limit=10000

    if [ ${num_log} -lt ${num_limit} ];
    then
    sed -n '1,$p' ${log_name} > ~/${log_name}.${date_time}
    else
    num_str=$((${num_log} - ${num_limit}))
    # echo ${num_str}
    sed -n $num_str,'$p' ${log_name} > ~/${log_name}.${date_time}
    fi

  • 相关阅读:
    Jmeter测试webservice服务
    【转】webservice 测试地址
    ADB(Android Debug Bridge)小结
    Access computer files on iPad without using iTunes.
    ياخشىمۇ سىز
    网络威胁实时地图(CyberThread Real-time Map)
    π
    基于网络爬虫的小湖知识图谱系统 测试心得
    第一次迭代开发心得
    项目数据库设计心得
  • 原文地址:https://www.cnblogs.com/xiaofeng91/p/15907446.html
Copyright © 2020-2023  润新知