From 32d39cdc1caf55d439c85517ec2b8882d9da3924 Mon Sep 17 00:00:00 2001 From: James Collins Date: Fri, 3 Feb 2023 11:17:19 +1000 Subject: [PATCH] add split logs --- app/Http/Controllers/Api/LogController.php | 25 +++++++-- .../js/views/dashboard/DiscordBotLog.vue | 51 ++++++++++++------- 2 files changed, 56 insertions(+), 20 deletions(-) diff --git a/app/Http/Controllers/Api/LogController.php b/app/Http/Controllers/Api/LogController.php index 257a7c7..c2c5fd0 100644 --- a/app/Http/Controllers/Api/LogController.php +++ b/app/Http/Controllers/Api/LogController.php @@ -26,14 +26,33 @@ class LogController extends ApiController if($request->user()?->hasPermission('logs/' . $name)) { switch(strtolower($name)) { case 'discord': - $contents = ''; + $outputContents = ''; + $errorContents = ''; + + // output log $filePath = '/home/discordbot/.pm2/logs/stemmech-discordbot-out-0.log'; if(file_exists($filePath) === true) { - $contents = file_get_contents($filePath); + $outputContents = file_get_contents($filePath); } $lines = preg_split("/(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}: (?:(?!\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}: )[\s\S])*)/", $contents, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); - return $this->respondJson(['log' => implode('', array_reverse($lines))]); + $outputContents = implode('', array_reverse($lines)); + + // error log + $filePath = '/home/discordbot/.pm2/logs/stemmech-discordbot-error-0.log'; + if(file_exists($filePath) === true) { + $outputContents = file_get_contents($filePath); + } + + $lines = preg_split("/(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}: (?:(?!\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}: )[\s\S])*)/", $contents, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); + $errorContents = implode('', array_reverse($lines)); + + return $this->respondJson([ + 'log' => [ + 'output' => $outputContents, + 'errors' => $errorContents, + ] + ]); } } diff --git a/resources/js/views/dashboard/DiscordBotLog.vue b/resources/js/views/dashboard/DiscordBotLog.vue index 58665a0..0699516 100644 --- a/resources/js/views/dashboard/DiscordBotLog.vue +++ b/resources/js/views/dashboard/DiscordBotLog.vue @@ -1,47 +1,64 @@