omatech/laravel-check-supervisor

0.9.4 2018-11-13 17:21 UTC

This package is not auto-updated.

Last update: 2024-09-15 04:52:37 UTC


README

检查Supervisor是否正在运行并自动重新启动的命令。

安装

1.- 在你的 composer.json 中要求该包。

composer require omatech/laravel-check-supervisor

2.- 注册服务提供者。

    // config/app.php
    
    'providers' => [
        ...
        Omatech\CheckSupervisor\CheckSupervisorServiceProvider::class,
        ...
    ];

3.- 如需使用自动重启选项,可选地发布包的配置文件

php artisan vendor:publish 

然后,选择

Omatech\CheckSupervisor\App\Providers\PublishServiceProvider

使用方法

1.- 使用命令来了解supervisor是否宕机。你可以在crontab中自动化它。

php artisan supervisor:check

2.- 创建监听器来捕获包的事件。在这里你可以创建自定义通知。示例

php artisan make:listener SupervisorListener
<?php

namespace App\Listeners;

use App\Mail\YourCustomEmail;
use Illuminate\Support\Facades\Mail;

class SupervisorListener
{
    protected $log;

    /**
     * Create the event listener.
     *
     * @return void
     */
    public function __construct($log = null)
    {
        $this->log = $log;
    }

    /**
     * Handle the event.
     *
     * @param  object  $event
     * @return void
     */
    public function handle($event)
    {
        Mail::to('me@example.com')->send(new YourCustomEmail($this->log));
    }
}

你可以使用 __construct 中的参数来捕获包的反馈。

3.- 在你的 EventServiceProvider 中注册事件和监听器。示例

    protected $listen = [
        ... 
        
        SupervisorIsNotRunning::class => [
            SupervisorListener::class
        ],
        SupervisorRestarted::class => [
            SupervisorListener::class
        ]
        
        ...
    ];

4.- 如果想激活自动重启选项,将配置文件 check-supervisor.php 中的变量 restart-supervisor 设置为 true。

    return [
        'restart-supervisor' => true
    ];

致谢

特别感谢

组织

贡献者

请参阅贡献者列表 这里

许可证

MIT 许可证.