echo "File '{$logFile}' is too old, it will be skiped.\n"; } else { if (array_key_exists($logFileTime, $sortedLogFiles)) { echo "File '{$logFile}' has the same filetime than '{$sortedLogFiles[$logFileTime]}'. Unable to continue.\n"; exit(1); } else { $sortedLogFiles[$logFileTime] = $logFile; } } } ksort($sortedLogFiles); /* Read files */ echo "Read log files...\n"; foreach ($sortedLogFiles as $logFile) { global $filter; global $filterOut; $parser = new LogParser(); if ($parser->openLogFile($logFile)) { echo "File '{$logFile}' opened.\n"; while ($line = $parser->getLine()) { $logHash = $parser->formatLine($line); if (shouldBeStored($logHash["path"], $filter, $filterOut) && $logHash["status"] != '404' && $logHash["status"] != '301' && ($countSimilarRequests || !isAlreadyStored($logHash)) && $logHash["unixtime"] > $lastPiwikInsertionTime) { saveInPiwik($logHash); } } $parser->closeLogFile(); } else { echo "File '{$logFile}' is not readable.\n"; exit(1); } }