awk分析话单列子 tcp连接失败率,及失败连接的topN

# 计算话单中,tcp连接失败率,及失败连接的topN
# 第29字段为6时的话单为tcp连接
# 第85字段为1时表示连接失败
# 第28字段表示目的ip,即服务器的ip, 按目的ip计算topN
# $0表示整行, FS表示字段分割符, NF表示当前记录中的字段数量,NR表示表示当前记录的编号,awk将第一个记录算作记录号1


awk -F '\t' '{
    if ($29!=6)
    {
        next;
    }
    dip = $28; DIP[dip]++;
    if($85==1){DIP_F[dip]++}
}END{
    for (dip in DIP)
    {
        fail=0;
        tot=DIP[dip]; fail+=DIP_F[dip];
        print fail/tot, fail, tot, dip
    }
}' userflow_20130410_153822_010005.log | sort -nr | more | awk '{
   F+=$2;T+=$3;
   if($1>0.03)
   {
       a++;A+=$2;
   } else {
       b++;}
   B+=$2
} END {print a, b, a/b, A, B, A/B, F, T, F/T}'


awk -F '\t' '{
    if ($29!=6)
    {
        next;
    }
    dip = $28; DIP[dip]++;
    if($85==1){DIP_F[dip]++}
}END{
    for (dip in DIP)
    {
        fail=0;
        tot=DIP[dip]; fail+=DIP_F[dip];
        print fail, tot, fail/tot, dip
    }
}' userflow_20130410_15*_010005.log | sort -nr | more | awk '{
   F+=$1;T+=$2;
   if($1>5)
   {
       a++;A+=$1
   } else {
       b++;B+=$1
   }
} END {print a, b, A/(A+B), A, B, F, T, F/T}'


awk -F '\t' '{
    sumline+=1;
    if (6==$29)
        tcpconn+=1;
    tcpfailconn+=$85
    }END{
    print sumline;print tcpconn;print tcpfailconn;print tcpfailconn/tcpconn; print tcpfailconn/sumline
    }' userflow_20130410_153822_010005.log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值