问题:有些时候需要实时监控Linux中某日志文件,不断地分析该文件的增量信息,并对这些信息进行相应的处理。
分析:可以每隔一段时间,提取该文件在该时间段增加的信息。
环境:比如文件为info.log
方法:方法1. 每隔一小时将该文件mv为info-时间.log,此时相当于把info.log清空,并把前一小时的log信息另存为一个带有时间信息的文件。这样,就把日志按照一小时一小时得存为不同文件,每个文件都可以看成增量信息。
方法2. 每隔五分钟读取该日志文件,并记录读取到哪一行,下次从该行的下一行继续读取。
曾采用的不严谨的方法:每隔五分钟读取该日志文件,并将此时的日志文件cp为info.log.old,下次读取时使用diff info.log info.log.old来获取两个文件不同的内容