如何使用AWK规整KyLin日志改进

本篇文章为大家展示了如何使用AWK规整KyLin日志改进,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。


在前文的基础上,增加了改进。
主要是细节格式的调整.
处理100M数据用时7s

http://blog.itpub.net/29254281/viewspace-2156713/

 time awk '
    function ltrim(s) { sub(/^[ \t\r\n]+/, "", s); return s }
    function rtrim(s) { sub(/[ \t\r\n]+$/, "", s); return s }
    function trim(s) { return rtrim(ltrim(s)); }
    /^Query Id:/{split($0,rowdata,":");} 
    /^SQL:/{s=trim($0);next;}   
    /^User:/{print "19700101 000000000 INFO  [Query "trim(rowdata[2])" "s;s="";print $0;}
    /^==========================/{delete rowdata;} 
    {
        if(rowdata[2]!="") 
            if(s!="") s=(s" "trim($0))
            else
                print "19700101 000000000 INFO  [Query "trim(rowdata[2])" "$0;
        else gsub("[,:-]","",$1);gsub("[,:-]","",$2);$5=substr($5,0,36);print ($0);
    }
    
'  kylinbig.log | grep "\\[Query" | nl -n ln | tr "\t" " " | tr -s '  ' ' '  |  sort   -k6,6 -k1n,1   | cut -d ' ' -f 2,3,4,6-  | sed '/Using project:/{x;p;x;}'  > t1.txt

以上就是使用AWK规整KyLin日志改进,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

上述内容就是如何使用AWK规整KyLin日志改进,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。