vzool/horizon

Dashboard and code-driven configuration for Laravel queues.

v1.2.4 2018-02-20 16:08 UTC

README

68747470733a2f2f6c61726176656c2e636f6d2f6173736574732f696d672f636f6d706f6e656e74732f6c6f676f2d686f72697a6f6e2e737667

Build Status Total Downloads Latest Stable Version License

Introduction

Horizon provides a beautiful dashboard and code-driven configuration for your Laravel powered Redis queues. Horizon allows you to easily monitor key metrics of your queue system such as job throughput, runtime, and job failures.

All of your worker configuration is stored in a single, simple configuration file, allowing your configuration to stay in source control where your entire team can collaborate.

Setup

  1. Install by composer (required PHP 7.1+)
composer require vzool/horizon
  1. Add the following to config/app.php
'providers' => [

    // ..

    Vzool\Horizon\HorizonServiceProvider::class,
],
'aliases' => [

    // ..

    "Horizon" => Vzool\Horizon\Horizon::class,
]
  1. Do artisan command
php artisan vendor:publish
  1. Add the follow to app\Providers\AppServiceProvider.php in order to secure /horizon end point.
<?php

namespace App\Providers;

// ..

use Vzool\Horizon\Horizon;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        // ..

        // Add Horizon authentication [IGNORE IN DEV]
        
        Horizon::auth(function ($request) {
        
            // allow admins  only to see this page 
            // return \Auth::user()->is_admin;
            // or return any true / false
        });
    }

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }
}
  1. Browse /horizon and have fun with your X-Ray Vision. ;)

Official Documentation

Documentation for Horizon can be found on the Laravel website.

License

Laravel Horizon is open-sourced software licensed under the MIT license