diff --git a/scripts/ssh/ssh-exec.php b/scripts/ssh/ssh-exec.php --- a/scripts/ssh/ssh-exec.php +++ b/scripts/ssh/ssh-exec.php @@ -307,7 +307,7 @@ $ssh_log->setData( array( 'c' => $err, - 'T' => (int)(1000000 * (microtime(true) - $ssh_start_time)), + 'T' => phutil_microseconds_since($ssh_start_time), )); exit($err); diff --git a/src/applications/conduit/controller/PhabricatorConduitAPIController.php b/src/applications/conduit/controller/PhabricatorConduitAPIController.php --- a/src/applications/conduit/controller/PhabricatorConduitAPIController.php +++ b/src/applications/conduit/controller/PhabricatorConduitAPIController.php @@ -109,15 +109,13 @@ $error_info = $ex->getMessage(); } - $time_end = microtime(true); - $log ->setCallerPHID( isset($conduit_user) ? $conduit_user->getPHID() : null) ->setError((string)$error_code) - ->setDuration(1000000 * ($time_end - $time_start)); + ->setDuration(phutil_microseconds_since($time_start)); if (!PhabricatorEnv::isReadOnly()) { $unguarded = AphrontWriteGuard::beginScopedUnguardedWrites(); diff --git a/src/applications/conduit/ssh/ConduitSSHWorkflow.php b/src/applications/conduit/ssh/ConduitSSHWorkflow.php --- a/src/applications/conduit/ssh/ConduitSSHWorkflow.php +++ b/src/applications/conduit/ssh/ConduitSSHWorkflow.php @@ -73,15 +73,13 @@ // if the response is large and the receiver is slow to read it. $this->getIOChannel()->flush(); - $time_end = microtime(true); - $connection_id = idx($metadata, 'connectionID'); $log = id(new PhabricatorConduitMethodCallLog()) ->setCallerPHID($this->getSSHUser()->getPHID()) ->setConnectionID($connection_id) ->setMethod($method) ->setError((string)$error_code) - ->setDuration(1000000 * ($time_end - $time_start)) + ->setDuration(phutil_microseconds_since($time_start)) ->save(); } } diff --git a/src/applications/diffusion/engine/DiffusionCommitHookEngine.php b/src/applications/diffusion/engine/DiffusionCommitHookEngine.php --- a/src/applications/diffusion/engine/DiffusionCommitHookEngine.php +++ b/src/applications/diffusion/engine/DiffusionCommitHookEngine.php @@ -1113,14 +1113,13 @@ $viewer = $this->getViewer(); $hook_start = $this->getStartTime(); - $hook_end = microtime(true); $event = PhabricatorRepositoryPushEvent::initializeNewEvent($viewer) ->setRepositoryPHID($this->getRepository()->getPHID()) ->setRemoteAddress($this->getRemoteAddress()) ->setRemoteProtocol($this->getRemoteProtocol()) ->setEpoch(PhabricatorTime::getNow()) - ->setHookWait((int)(1000000 * ($hook_end - $hook_start))); + ->setHookWait(phutil_microseconds_since($hook_start)); $identifier = $this->getRequestIdentifier(); if (strlen($identifier)) { diff --git a/src/applications/diffusion/protocol/DiffusionRepositoryClusterEngine.php b/src/applications/diffusion/protocol/DiffusionRepositoryClusterEngine.php --- a/src/applications/diffusion/protocol/DiffusionRepositoryClusterEngine.php +++ b/src/applications/diffusion/protocol/DiffusionRepositoryClusterEngine.php @@ -772,8 +772,7 @@ try { $future->resolvex(); } catch (Exception $ex) { - $sync_end = microtime(true); - $log->setSyncWait((int)(1000000 * ($sync_end - $sync_start))); + $log->setSyncWait(phutil_microseconds_since($sync_start)); if ($ex instanceof CommandException) { if ($future->getWasKilledByTimeout()) { @@ -806,10 +805,8 @@ throw $ex; } - $sync_end = microtime(true); - $log - ->setSyncWait((int)(1000000 * ($sync_end - $sync_start))) + ->setSyncWait(phutil_microseconds_since($sync_start)) ->setResultCode(0) ->setResultType(PhabricatorRepositorySyncEvent::RESULT_SYNC) ->save(); diff --git a/src/infrastructure/daemon/workers/storage/PhabricatorWorkerActiveTask.php b/src/infrastructure/daemon/workers/storage/PhabricatorWorkerActiveTask.php --- a/src/infrastructure/daemon/workers/storage/PhabricatorWorkerActiveTask.php +++ b/src/infrastructure/daemon/workers/storage/PhabricatorWorkerActiveTask.php @@ -169,8 +169,7 @@ $t_start = microtime(true); $worker->executeTask(); - $t_end = microtime(true); - $duration = (int)(1000000 * ($t_end - $t_start)); + $duration = phutil_microseconds_since($t_start); $result = $this->archiveTask( PhabricatorWorkerArchiveTask::RESULT_SUCCESS, diff --git a/support/startup/PhabricatorStartup.php b/support/startup/PhabricatorStartup.php --- a/support/startup/PhabricatorStartup.php +++ b/support/startup/PhabricatorStartup.php @@ -64,6 +64,8 @@ * @task info */ public static function getMicrosecondsSinceStart() { + // This is the same as "phutil_microseconds_since()", but we may not have + // loaded libphutil yet. return (int)(1000000 * (microtime(true) - self::getStartTime())); }