true, "error_handler" => function($code, $msg){ print("$code: $msg\n"); exit(1); } )); /** * Payloads */ $total = 0; $successful = 0; foreach ($lines as $line) { if (!trim($line)) continue; $payload = json_decode($line, true); $dt = new DateTime($payload["timestamp"]); $ts = floatval($dt->getTimestamp() . "." . $dt->format("u")); $payload["timestamp"] = $ts; $type = $payload["type"]; $ret = call_user_func_array(array("Segment", $type), array($payload)); if ($ret) $successful++; $total++; if ($total % 100 === 0) Segment::flush(); } Segment::flush(); unlink($file); /** * Sent */ print("sent $successful from $total requests successfully"); exit(0); /** * Parse arguments */ function parse($argv){ $ret = array(); for ($i = 0; $i < count($argv); ++$i) { $arg = $argv[$i]; if ('--' != substr($arg, 0, 2)) continue; $ret[substr($arg, 2, strlen($arg))] = trim($argv[++$i]); } return $ret; }