Laravel Packages

Nova Log Viewer Package

Published
Nova Log Viewer Package image

Laravel Nova author David Hemphill released the Nova Log Viewer source code—a tool for viewing your application logs via the Nova UI:

The UI allows you to select which log file to view and even supports polling. Further, you can use the source code to see how these tools integrate with Nova and use it as a starting point to build your own.

While looking through the source code, I found a couple of gems (to me), such as defining an invokable controller and using the same controller to define another method for the API call to get logs.

The fetch API controller method shows off a neat instance method I've not used before called contentAfterLine:

/**
* Fetch the latest content for a log.
*
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
* @return \Illuminate\Http\JsonResponse
*/
public function fetch(NovaRequest $request)
{
$request->validate(['lastLine' => ['numeric']]);
$logFile = new File($request->log);
$lines = $logFile->contentAfterLine($request->lastLine);
$lastLine = $request->lastLine + substr_count($lines, PHP_EOL);
 
return response()->json([
'lastLine' => $lastLine,
'content' => $lines,
'numberOfLines' => $logFile->numberOfLines(),
]);
}

Learn More

You can learn more about this package, get full installation instructions, and view the source code on GitHub.

Laravel Nova v4 was released in April 2022—here are some resources to get started with the latest version:

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
PayZephyr: One Payment API for Stripe, Paystack, and PayPal image

PayZephyr: One Payment API for Stripe, Paystack, and PayPal

Read article
Bifrost Turns One With AI Builds and New Workflows image

Bifrost Turns One With AI Builds and New Workflows

Read article
Preview Blade Templates in macOS Finder with Quick Blade image

Preview Blade Templates in macOS Finder with Quick Blade

Read article
Artisan Debugging Commands in Laravel Telescope 5.24.0 image

Artisan Debugging Commands in Laravel Telescope 5.24.0

Read article
Queue totalSize() and JobInterrupted Event in Laravel 13.31 image

Queue totalSize() and JobInterrupted Event in Laravel 13.31

Read article
Find Unexpected Test Inputs with Fuzz for Pest image

Find Unexpected Test Inputs with Fuzz for Pest

Read article