From b13bf96937be5cd7af946961bab42fa9687b26bf Mon Sep 17 00:00:00 2001 From: Christopher Ross Hind Date: Sat, 2 Jan 2021 07:46:02 +0000 Subject: [PATCH] Add event timers for profiling --- app/Http/Controllers/IndexController.php | 18 ++++++++++++++++-- app/Http/Controllers/ThreadListController.php | 13 ++++++++++++- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/IndexController.php b/app/Http/Controllers/IndexController.php index c946556..aa34292 100644 --- a/app/Http/Controllers/IndexController.php +++ b/app/Http/Controllers/IndexController.php @@ -9,18 +9,32 @@ class IndexController extends Controller { public function get() { + start_measure('IndexController','Execute IndexController'); + + start_measure('Stat::all', 'Get stats'); + $stats = Stat::all()->getRecord(); + stop_measure('Stat::all'); + + start_measure('Subforum::all', 'Get subforums'); $subforums = Subforum::all(); + stop_measure('Subforum::all'); $records = $subforums->getRecords(); $len = count($records); $leftSubforums = array_slice($records, 0, $len / 2); $rightSubforums = array_slice($records, $len / 2); - return view('page/index', [ + start_measure('IndexView','Render IndexView'); + $html = view('page/index', [ 'leftSubforums' => $leftSubforums, 'rightSubforums' => $rightSubforums, - 'stat' => Stat::all()->getRecord() + 'stat' => $stats ]); + stop_measure('IndexView'); + + stop_measure('IndexController'); + + return $html; } } diff --git a/app/Http/Controllers/ThreadListController.php b/app/Http/Controllers/ThreadListController.php index 8beabe5..d7b09ae 100644 --- a/app/Http/Controllers/ThreadListController.php +++ b/app/Http/Controllers/ThreadListController.php @@ -10,14 +10,25 @@ class ThreadListController extends Controller { public function subforum(Request $request) { + start_measure('ThreadListController','Execute ThreadListController'); + $subforumId = $request->route('subforum', null); $page = $request->route('page', 1); + + start_measure('Subforum::one', 'Get subforum'); $subforum = Subforum::one($subforumId, $page); + stop_measure('Subforum::one'); - return view('page/subforum', [ + start_measure('SubforumView','Render SubforumView'); + $html = view('page/subforum', [ 'subforum' => $subforum->getRecord(), 'paginator' => $subforum->getPaginator($request) ]); + stop_measure('SubforumView'); + + stop_measure('ThreadListController'); + + return $html; } public function popular()