logFile = $logDir . 'trace-' . date('Y-m-d') . '.log'; } public function log($direction, $functionName, $lineNo, $params = []) { try { $uuid = get_session_uuid(); $logEntry = [ 'timestamp' => date('c'), 'uuid' => $uuid, 'direction' => $direction, // IN or OUT 'function' => $functionName, 'line' => $lineNo, 'params' => $params, ]; file_put_contents( $this->logFile, json_encode($logEntry) . PHP_EOL, FILE_APPEND | LOCK_EX ); } catch (Throwable $e) { // Don’t break anything if logging fails } } }