What is Laravel Pulse? And how to use it

What is Laravel Pulse? And how to use it
by

As web developer or backend web developer you cannot create optimized endpoints for your application and then it takes a lot of time to find the query or that route that is taking time.Well if you are a Laravel php developer look no further as laravel has launched Laravel pulse  a built in tool that helps you track all the slow queries,jobs,outgoing request ,routes. Currently at the time of writing this article laravel pulse is still in its beta version. It is a very handy and lightweight tool that can help in creation of optimized web applications.

Installation

As currently laravel pulse is in it’s beta version you might need to change/add these lines in composer.json 


  “minimum-stability”: “beta”,

    “prefer-stable”: true

As of right now laravel pulse storage implementation requires a MySQL or PostgreSQL database. So if you are using another database you need to set up separate database for laravel pulse.

  • Use composer require laravel/pulse to install laravel pulse 
  • After that publish the migration and configurations using artisan: publish command
    php artisan vendor:publish –provider=”Laravel\Pulse\PulseServiceProvider”
  • After that run php artisan:migrate command to get the pulse database

After installation of laravel pulse on local server you can access it by using
/pulse route

Configuration 

Many of the pulse configuration can be viewed or edited using the .env variables for using and editing the advanced features of laravel pulse  you need to publish it’s config file in config/pulse.php

php artisan vendor:publish –tag=pulse-config

an example dashboard of Laravel pulse

Authorization

by default the /pulse route can be accessed by anybody in order to prevent un authorized people from accessing we can create a simple authorization one of example of it is as provided on Laravel own website. by creating/editing the 'viewPulse' authorization gate in app/Providers/AuthServiceProvider.php file:

use App\Models\User;
use Illuminate\Support\Facades\Gate; 
/** * Register any authentication / authorization services. */
public function boot(): void
{
Gate::define(‘viewPulse’, function (User $user)
{ return $user->isAdmin(); }
); 
// …}



Leave a Reply

Your email address will not be published. Required fields are marked *