| 123456789101112131415161718192021222324252627282930313233343536373839404142 | 
							- <?php
 
- namespace App\Search\Providers;
 
- use App\Search\Engines\ElasticsearchEngine;
 
- use Elasticsearch\ClientBuilder;
 
- use Illuminate\Support\ServiceProvider;
 
- use Laravel\Scout\EngineManager;
 
- use Monolog\Handler\StreamHandler;
 
- use Monolog\Logger;
 
- class ElasticsearchProvider extends ServiceProvider
 
- {
 
-     /**
 
-      * Bootstrap the application services.
 
-      *
 
-      * @return void
 
-      */
 
-     public function boot()
 
-     {
 
-         resolve(EngineManager::class)->extend('elasticsearch', function () {
 
-             $logger = new Logger('elasticsearch');
 
-             $logger->pushHandler(new StreamHandler(storage_path('logs/elasticsearch/search.log'), Logger::CRITICAL));
 
-             return new ElasticsearchEngine(
 
-                 ClientBuilder::create()
 
-                     ->setHosts(config('scout.elasticsearch.host'))
 
-                     ->setLogger($logger)
 
-                     ->build()
 
-             );
 
-         });
 
-     }
 
-     /**
 
-      * Register the application services.
 
-      *
 
-      * @return void
 
-      */
 
-     public function register()
 
-     {
 
-         //
 
-     }
 
- }
 
 
  |