前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux 超大日志数据分析 AWK

linux 超大日志数据分析 AWK

作者头像
葫芦
发布2019-04-17 09:51:09
1.3K0
发布2019-04-17 09:51:09
举报
文章被收录于专栏:葫芦
代码语言:javascript
复制
#!/bin/bash
///
./flowdata.log
2017-02-02 15:29:19,390 [views:111:ebitpost] [INFO]- ebitapi: http://218.85.118.8:8000/api/user/query, ebit response: src_ip: 110.86.101.119:63688, content: {"data":{"basic_rate_down":20480,"basic_rate_up":2048,"dial_acct":"fj::059391534153","max_linerate_down":102400,"max_linerate_up":102400},"message":"提速判断成功","result":0}
///
///
./ipdb_cn.txt
1.1.1.0  中国 广东 深圳 
1.1.2.0  中国 广东 深圳
...
233.233.2.0  中国 新疆 乌鲁木齐
///


grep -Po 'src_ip: ?\K[^:,]+|client_ip: ?\K[^:,]+' flowdata.log |awk -F. '!a[$0]++{$4=0;print}' OFS=. | awk 'FNR==NR{a[$1]=$3;b[$1]=1;next}b[$1]{s[a[$1]]++;next}{s["未知"]++}END{for(i in s) printf "%s\t%.2f%\n",i,s[i]/FNR*100}' ipdb_cn.txt - |column -t |sort -k2nr





grep -Po 'src_ip: ?|\K[^:,]+|client_ip: ?\K[^:,]+' flowdata.log |awk -F. '!a[$0]++{b[$1FS$2FS$3]++}END{for(i in b)print i FS 0,b[i]}' |awk 'FNR==NR{a[$1]=$3;next}{a[$1]!=""?s[a[$1]]+=$2:s["未知"]+=$2;n+=$2}END{for(i in s)printf "%s\t%.2f%\n",i,s[i]/n*100}' ipdb_cn.txt |sort -k2n |column -t
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/09/25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档