免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2414 | 回复: 2
打印 上一主题 下一主题

求助:对log文件内容实时过虑 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-05-26 22:41 |只看该作者 |倒序浏览
log内容的格式是: 时间 + 空格 + IP + 空格 + message内容(有可能换行)
为了方便说明,在每条记录前加了一个编号.
方便内容如下:

编号                       内容
--------------------------------------------------------
1   2010/05/26 10:10:01 192.168.0.1 x111111111111111
2   2010/05/26 10:10:01 192.168.0.2 x222222222222222
3   aaaaaaa
4   bbbbbbb
5   ccccccc
6   2010/05/26 10:10:01 192.168.0.1 x333333333333333
7   1111111
8   2222222
9   3333333
10  2010/05/26 10:10:01 192.168.0.3 x444444444444444
11  2010/05/26 10:10:01 192.168.0.1 x555555555555555
12  aaaaaaaaa11111111
13  2010/05/26 10:10:01 192.168.0.2 xaaaaaaaaaaaaaaa
14  2010/05/26 10:10:01 192.168.0.1 xbbbbbbbbbbbbbbb
15  bbbbbbbbb000000000000000
16  2010/05/26 10:10:01 192.168.0.4 xccccccccccccccc
17  33333
18  2010/05/26 10:10:01 192.168.0.3 xddddddddddddddd
19  ccccccc
20  2010/05/26 10:10:01 192.168.0.2 xeeeeeeeeeeeeeee
21  999999999999999
22  1010101010101010
23  2010/05/26 10:10:01 192.168.0.1 x1ffffffffffffff
24  2010/05/26 10:10:01 192.168.0.4 x1gggggggggggggg

现在想通过IP过虑想要的内容.
如指定IP为:192.168.0.2
得到的结果log内容是:
-------------------------------------------------------------------------------
2   2010/05/26 10:10:01 192.168.0.2 x222222222222222
3   aaaaaaa
4   bbbbbbb
5   ccccccc
13  2010/05/26 10:10:01 192.168.0.2 xaaaaaaaaaaaaaaa
20  2010/05/26 10:10:01 192.168.0.2 xeeeeeeeeeeeeeee
21  999999999999999
22  1010101010101010
-------------------------------------------------------------------------------
如指定IP为:192.168.0.3
得到的结果log内容是:
-------------------------------------------------------------------------------
10  2010/05/26 10:10:01 192.168.0.3 x444444444444444
18  2010/05/26 10:10:01 192.168.0.3 xddddddddddddddd
19  ccccccc
-------------------------------------------------------------------------------

因为log文件是时刻在增加.
现在想做一个通过IP过虑,
得到指定IP打出的log message内容.
从而进行实时监控过虑log文本文件内容.
功能如:tail -f log文件名 | grep IP(这个命令缺点:换行后的message内容,显示不出来)

被这个事情困扰了很久,一直没有想到理解的解决方法.请大家帮忙.先谢谢啦!

论坛徽章:
0
2 [报告]
发表于 2010-05-26 23:15 |只看该作者

  1. tail -f LOGFILE | awk --posix -v ip="192.168.0.2" '{if($0~ip) f=1; else if($0~/([0-9]+\.){3}[0-9]+/) f=0}f'
复制代码

论坛徽章:
0
3 [报告]
发表于 2010-05-27 20:45 |只看该作者
非常感谢 kwokcn,达到我想要的效果了.学习了!
再次表示感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP