Enabling the Logger

edit

Elasticsearch-PHP supports logging, but it is not enabled by default for performance reasons. If you wish to enable logging, you need to select a logging implementation, install it, then enable the logger in the Client. The recommended logger is Monolog, but any logger that implements the PSR-3 interface works.

To begin using Monolog, just require it using composer:

composer require monolog/monolog

Once Monolog (or another logger) is installed, you need to create a log object and inject it into the client:

use Monolog\Logger;
use Monolog\Handler\StreamHandler;

$logger = new Logger('name');
$logger->pushHandler(new StreamHandler('path/to/your.log', Logger::WARNING));

$client = ClientBuilder::create()
    ->setLogger($logger)        // Set your custom logger
    ->build();                  // Build the client object