【发布时间】:2015-03-01 03:38:08
【问题描述】:
我有八个格式如下的日志文件:
log01:
[Tue Feb 24 07:39:37 2015] *** MARK ***
[Tue Feb 24 07:40:38 2015] *** MARK ***
[Wed Feb 25 17:13:33 2015] *** MARK ***
[Wed Feb 25 17:14:09 2015] *** MARK ***
[Wed Feb 25 17:16:46 2015] *** MARK ***
[Wed Feb 25 17:17:48 2015] *** MARK ***
[Wed Feb 25 17:22:31 2015] *** MARK ***
[Wed Feb 25 19:10:36 2015] *** MARK ***
[Wed Feb 25 19:10:52 2015] *** MARK ***
[Wed Feb 25 19:11:08 2015] *** MARK ***
[Wed Feb 25 19:11:34 2015] *** MARK ***
[Wed Feb 25 19:12:00 2015] *** MARK ***
[Wed Feb 25 19:12:26 2015] *** MARK ***
[Wed Feb 25 19:13:17 2015] *** MARK ***
[Wed Feb 25 19:13:33 2015] *** MARK ***
[Wed Feb 25 19:15:05 2015] *** MARK ***
[Wed Feb 25 19:37:53 2015] *** MARK ***
[Wed Feb 25 19:38:19 2015] *** MARK ***
[Wed Feb 25 19:38:35 2015] *** MARK ***
[Wed Feb 25 23:08:47 2015] *** MARK ***
[Wed Feb 25 23:09:28 2015] *** MARK ***
[Wed Feb 25 23:11:55 2015] *** MARK ***
[Wed Feb 25 23:12:21 2015] *** MARK ***
[Wed Feb 25 23:12:52 2015] *** MARK ***
[Wed Feb 25 23:13:08 2015] *** MARK ***
...
log02:
[Wed Feb 25 07:01:39 2015] *** MARK ***
[Wed Feb 25 17:13:49 2015] *** MARK ***
[Wed Feb 25 17:15:20 2015] *** MARK ***
[Wed Feb 25 17:16:47 2015] *** MARK ***
[Wed Feb 25 17:17:38 2015] *** MARK ***
[Wed Feb 25 17:19:56 2015] *** MARK ***
[Wed Feb 25 17:22:53 2015] *** MARK ***
[Wed Feb 25 19:10:47 2015] *** MARK ***
[Wed Feb 25 19:11:13 2015] *** MARK ***
[Wed Feb 25 19:11:34 2015] *** MARK ***
[Wed Feb 25 19:11:50 2015] *** MARK ***
[Wed Feb 25 19:12:11 2015] *** MARK ***
[Wed Feb 25 19:12:37 2015] *** MARK ***
[Wed Feb 25 19:12:53 2015] *** MARK ***
[Wed Feb 25 19:13:14 2015] *** MARK ***
[Wed Feb 25 19:13:40 2015] *** MARK ***
[Wed Feb 25 19:14:06 2015] *** MARK ***
[Wed Feb 25 19:14:22 2015] *** MARK ***
[Wed Feb 25 19:14:38 2015] *** MARK ***
[Wed Feb 25 19:38:30 2015] *** MARK ***
[Wed Feb 25 21:17:08 2015] *** MARK ***
[Wed Feb 25 23:08:56 2015] *** MARK ***
[Wed Feb 25 23:10:37 2015] *** MARK ***
[Wed Feb 25 23:11:08 2015] *** MARK ***
[Wed Feb 25 23:11:24 2015] *** MARK ***
[Wed Feb 25 23:12:20 2015] *** MARK ***
[Wed Feb 25 23:12:46 2015] *** MARK ***
...
每个日志文件都是由读取不同传感器的同一程序的实例生成的。如果传感器检测到问题,则会创建一个日志条目。如果每个传感器在大约一分钟内检测到问题,则表明发生了全局问题。例如:
来自 log01 的日志条目 [Tue Feb 24 07:39:37 2015] *** MARK *** 和 [Tue Feb 24 07:40:38 2015] *** MARK *** 与 log02 中的任何内容都不对应,因此这不是全局问题,可以忽略。 log02中的日志条目[Wed Feb 25 07:01:39 2015] *** MARK ***和[Wed Feb 25 21:17:08 2015] *** MARK ***也可以忽略。
但是,log01 中的条目 [Wed Feb 25 19:10:36 2015] *** MARK *** 和 log02 中的 [Wed Feb 25 19:10:47 2015] *** MARK *** 在一分钟之内,因此这表明一个全局问题会持续到 log01 中的条目 [Wed Feb 25 19:15:05 2015] *** MARK *** 和 log02 中的 [Wed Feb 25 19:14:38 2015] *** MARK ***。所以我可以得出结论,从 2 月 25 日的 19:10 到 19:15 左右,出了点问题。
我正在寻找有关如何解决此问题的建议和技巧,最好使用 UNIX 实用程序。
【问题讨论】:
-
S.O.不是免费的编码服务。您应该尝试解决您的问题,我们帮助解决您的问题。祝你好运。
-
如何检测问题的结束时间?
-
shellter:我无意让任何人免费编写任何代码。由于日期格式,我不确定它是否可能,所以我希望就如何处理这个问题提出建议。试图为别人描述一个问题会让你对它有不同的看法,这有时会揭示解决方案。
-
Mark Setchell:如果所有日志文件都有一个彼此相差不到一分钟的条目,则检测到问题,一旦此模式停止,问题就结束了,结束时间将是最模式持续的当前时间,例如我的问题中的
Wed Feb 25 19:15:05 2015。
标签: regex linux bash shell unix