shell解析日志,如何加快速度。
现有20个日志文件,每个大小256M。 需要通过开始时间和结束时间,还有日志级别查询。格式如下:
2015-12-12 19:12:21,140 INFO orr.pache.common,fasfEFEFEWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
2015-12-12 19:12:21,190 INFO orr.pache.common,fasfEFEFEWbsFFFFFFFFFFFFFFFFFFFFFFFF
2015-12-12 19:12:21,191 INFO orr.pache.common,fasfEFEFEWFFFFFFFFFFFFFFFFFFFFnsFFFFFFFFFFFFFFFFFFFFFFFFF
2015-12-12 19:12:21,278 INFO orr.pache.common,fasfEFEFEWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
2015-12-12 19:12:21,290 INFO orr.pache.common,fasfEFEFEWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
2015-12-12 19:12:21,359 WARN orr.pache.common,fasfEFEFEWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
2015-12-12 19:12:21,453 INFO orr.pache.common,fasfEFEFEWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
2015-12-12 19:12:21,478 ERROR orr.pache.common,fasfEFEFEWFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
.....
时间从上往下递增,每个日志文件开头或者结尾可能或有格式不规则的说明,或者无效的数据。
例如: 需要查找2015-12-12 19:12:21,140到2015-12-12 19:12:31,140之间,级别为INFO的记录。
目前我是通过awk查询的,遍历每个文件,但是性能不行。
希望大神们给点建议,谢谢。