diff --git a/app/resources/views/logs/show.blade.php b/app/resources/views/logs/show.blade.php index 3b4bc5e..aedf07d 100644 --- a/app/resources/views/logs/show.blade.php +++ b/app/resources/views/logs/show.blade.php @@ -23,7 +23,7 @@ const logs = { id: '', start: 0, - amount: 10, + amount: {{$max_log_amount}}, total: 0, remaining: 0, watch_pos: 0, @@ -67,21 +67,23 @@ this.draw().unparsed(parent, log) }) }, - unparsed: (parent, log) => { - const title = $('
').addClass('title') + title: () => { + return $('
').addClass('title') .append($('').addClass('dropdown icon')) + }, + unparsed: (parent, log) => { + const title = this.draw().title() const content = $('
').addClass('content') title.append(log.original) content.html(log.original) parent.append(title).append(content) }, parsed: (parent, log) => { - const title = $('
').addClass('title') - .append($('').addClass('dropdown icon')) + const title = this.draw().title() const content = $('
').addClass('content') title.append( $('') - .addClass(log.severity.toLowerCase()).css('padding-left', '1ex').css('padding-right', '1ex') + .addClass(log.severity.toLowerCase()).css('padding', '.5ex 1ex')//.css('padding-left', '1ex').css('padding-right', '1ex') .html('[' + log.date + '] ' + log.severity) ) const card = $('
').addClass('ui fluid basic card').append( diff --git a/app/setup/settings/99_general.php b/app/setup/settings/99_general.php new file mode 100644 index 0000000..e825caf --- /dev/null +++ b/app/setup/settings/99_general.php @@ -0,0 +1,4 @@ + $_ENV['MAX_LOG_AMOUNT'] ?? 500 +]; diff --git a/app/setup/setups/02_view.php b/app/setup/setups/02_view.php index 3bb8056..060829f 100644 --- a/app/setup/setups/02_view.php +++ b/app/setup/setups/02_view.php @@ -8,7 +8,8 @@ return [ $container->get('folders')->get('cache'), null, [ - 'urls' => $container->get('urls') + 'urls' => $container->get('urls'), + 'max_log_amount' => $container->get('max_log_amount') ] ); } diff --git a/app/src/Parser/Monolog.php b/app/src/Parser/Monolog.php index afb011b..c35d2ca 100644 --- a/app/src/Parser/Monolog.php +++ b/app/src/Parser/Monolog.php @@ -37,7 +37,6 @@ class Monolog extends Parser "\s(?:\{|\[)(?.*)(?:\}|\])" ]; $regex = implode('', $regex); - //$regex = "/\[(?P\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{6}(?:\+|-)\d{2}:\d{2})\]\s(?\w*)\.(?\w*):\s(?.*)\s(?:\[|\{)(?.*)(?:\]|\})\s(?:\{|\[)(?.*)(?:\}|\])/"; try { \Safe\preg_match("/{$regex}/", $content, $matches); } catch (\Exception $e) { @@ -66,11 +65,15 @@ class Monolog extends Parser $log->setStack($lines); } $log->setMessage($message); - $log->setContext($matches['context']); - if (isset($matches['extra'])) { + if ($matches['context'] !== '') { + $log->setContext("{{$matches['context']}}"); + } + if (isset($matches['extra']) and $matches['extra'] !== '') { $extra['extra'] = "{{$matches['extra']}}"; } - $log->setExtra(\Safe\json_encode($extra, JSON_UNESCAPED_SLASHES)); + if (count($extra) > 0) { + $log->setExtra(\Safe\json_encode($extra, JSON_UNESCAPED_SLASHES)); + } } catch (\Error $e) { \Safe\error_log($e . PHP_EOL, 3, '/logs/debug.log'); \Safe\error_log(var_export($matches, true) . PHP_EOL, 3, '/logs/debug.log');