免费注册 查看新帖 |

Chinaunix

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

请教一个grep日志的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-13 12:26 |只看该作者 |倒序浏览
有如下格式的日志,我想在查出error的时候 打印上面和下面所有的错误信息 一直遇到INFO级别的时候结束打印。grep -i error log -A10 -B10这样的命令不能很好的满足这样的要求 当错误信息的行数太多的时候 得到的日志就不全了。有没有好的办法 麻烦大家给写一个~

  1. 2009-04-13 12:01:04,243 INFO  [pool-2-thread-1] [11111111111111111111111111111111111111111111111111
  2. 2009-04-13 12:01:04,326 WARN  [TP-Processor22] [1111111111111111111111111111111111111111111111
  3. 2009-04-13 12:01:04,328 WARN  [TP-Processor22] 11111111111111111111111111111111111111111111111
  4.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  5.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  6.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  7.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  8.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  9.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  10.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  11.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  12.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  13.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  14.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  15.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  16.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  17.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  18.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  19.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  20.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  21.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  22.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  23.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  24.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  25.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  26.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  27.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  28.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  29.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  30.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  31.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  32.         at 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
  33.         at org.apache..1111111111111111111111111Error11111111111111.invoke(Error1111111111.java:102)
  34.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  35.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  36.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  37.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  38.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  39.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  40.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  41.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  42.         at org.apache.11111111111111111111111111111111111111111111111111111111111111111111111111111
  43.         at java.lang.T11111111111111111111111111111111111111111111111111111111111111111111111111111
  44. 2009-04-13 12:01:04,643 INFO  [pool-2-thread-1] [11111111111111111111111111111111111111111111111111
复制代码

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
2 [报告]
发表于 2009-04-13 12:29 |只看该作者

回复 #1 codfei 的帖子

所有信息?

论坛徽章:
0
3 [报告]
发表于 2009-04-13 12:33 |只看该作者

回复 #2 blackold 的帖子

不是啊 这只是可能遇到的错误信息的格式 其余的信息格式和这个差不多 我们只关心error的

论坛徽章:
0
4 [报告]
发表于 2009-04-13 12:52 |只看该作者
  1. awk '/INFO/{n++}{a[n]=(a[n]?a[n]"\n"$0:$0)}END{for (j=1;j<=n;j++) if (a[j]~/Error/) print a[j]}' file
复制代码

[ 本帖最后由 ywlscpl 于 2009-4-13 12:57 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2009-04-13 13:11 |只看该作者

回复 #4 ywlscpl 的帖子

很好 很强大  能不能解释一下 呢
这样写error之前一直到INFO的信息都可以打印出来
我想在错误信息一直打印到INFO行 就是下面也打印出来一条INFO信息。

论坛徽章:
0
6 [报告]
发表于 2009-04-13 13:26 |只看该作者

回复 #4 ywlscpl 的帖子

测试了一下 这样会打印出过多的 INFO信息~

论坛徽章:
0
7 [报告]
发表于 2009-04-13 13:32 |只看该作者
你直接配置文件,分流error日志不就可以了

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
8 [报告]
发表于 2009-04-13 13:49 |只看该作者
莫非LZ想要这个?:
  1. awk -v RS='\n200' '/Error/||f{print 200$0;f=f?0:1}' urfile
复制代码

论坛徽章:
0
9 [报告]
发表于 2009-04-13 14:20 |只看该作者

回复 #8 blackold 的帖子

不是要 这个  谢谢黑哥

论坛徽章:
0
10 [报告]
发表于 2009-04-13 14:20 |只看该作者

回复 #6 codfei 的帖子

你不就是要的包含Error的INFO段落吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP