逐个阅读日志文件的最佳方法

时间:2015-11-12 14:53:31

标签: php

  1. 我有一个日志文件(最大大小为50Mb),其中每秒写入一次用户GET请求参数(nginx make it)。
  2. 我有cron php脚本,每分钟启动一次,应该读取日志文件的下一部分,计算数据并在统计mysql数据库中插入数据。
  3. 每分钟按部分阅读日志文件的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以定期阅读日志文件,如下所示:

$myFile = "log.txt";
$lines = file($myFile);
$last_line = 0;
@$last_line = file_get_contents('log-last-line.txt');

$i = 0;
foreach($lines as $line){
    $i++;
    if($i >= $last_line){
        //this lines are new, save them in database
    }
}
file_put_contents('log-last-line.txt', count($lines));

您可以从日志中写入“log-last-line.txt”最后一行。