Beispiel #1
0
 public function __construct()
 {
     global $argv;
     $this->colors = new Colors();
     if (file_exists('resume.lock') && $argv[1] != 'resume') {
         $this->resume();
     }
     if (isset($argv[1]) && $argv[1] == 'resume') {
         echo PHP_EOL . 'Resuming from previous state' . PHP_EOL;
         if (file_exists('resume.lock')) {
             $this->offset = (int) file_get_contents('resume.lock');
         } else {
             echo PHP_EOL . 'resume.lock file does not exist. Exiting...';
             die(PHP_EOL);
         }
     }
     if (strlen(DB_TABLE) == 0) {
         echo PHP_EOL . $this->colors->getColoredString("Database table is not defined. Please check the Config.php file.", 'red') . PHP_EOL;
         die;
     }
     try {
         $this->database = new medoo(['database_type' => 'mysql', 'database_name' => DB_NAME, 'server' => DB_HOST, 'username' => DB_USER, 'password' => DB_PASS, 'charset' => 'utf8', 'port' => DB_PORT]);
     } catch (Exception $e) {
         echo PHP_EOL . $this->colors->getColoredString("Error While Connection to mySQL Database,\nPlease check your Database connection settings in config.php", 'red') . PHP_EOL;
         die;
     }
     if (USE_DB_COLUMN == TRUE) {
         $this->idCol = DB_COL;
     }
     global $ES_HOST;
     $this->logger = \Elasticsearch\ClientBuilder::defaultLogger('mySQLtoes.log');
     $this->elasticSearch = \Elasticsearch\ClientBuilder::create()->setLogger($this->logger)->setHosts($ES_HOST)->build();
 }
 /**
  * Build and configure an Elasticsearch client.
  *
  * @param array $config
  * @return \Elasticsearch\Client
  */
 protected function buildClient(array $config)
 {
     $clientBuilder = ClientBuilder::create();
     // Configure hosts
     $clientBuilder->setHosts($config['hosts']);
     // Configure logging
     if (array_get($config, 'logging')) {
         $logObject = array_get($config, 'logObject');
         $logPath = array_get($config, 'logPath');
         $logLevel = array_get($config, 'logLevel');
         if ($logObject && $logObject instanceof LoggerInterface) {
             $clientBuilder->setLogger($logObject);
         } else {
             if ($logPath && $logLevel) {
                 $logObject = ClientBuilder::defaultLogger($logPath, $logLevel);
                 $clientBuilder->setLogger($logObject);
             }
         }
     }
     // Set additional client configuration
     foreach ($this->configMappings as $key => $method) {
         $value = array_get($config, $key);
         if ($value !== null) {
             call_user_func([$clientBuilder, $method], $value);
         }
     }
     // Build and return the client
     return $clientBuilder->build();
 }
 /**
  * Create a new logger instance for the Elasticsearch client and modify the
  * config for the client builder accordingly.
  *
  * @param  array $config
  * @return array
  */
 protected function createLoggerConfig($config)
 {
     $logger = \Elasticsearch\ClientBuilder::defaultLogger($config['logPath'], $config['logLevel']);
     unset($config['logPath'], $config['logLevel']);
     $config['logger'] = $logger;
     return $config;
 }
 /**
  * Build and configure an Elasticsearch client.
  *
  * @param array $config
  * @return \Elasticsearch\Client
  */
 protected function buildClient(array $config)
 {
     $clientBuilder = ClientBuilder::create();
     // Configure hosts
     $clientBuilder->setHosts($config['hosts']);
     // Configure SSL
     if (isset($config['sslVerification']) && $config['sslVerification'] !== null) {
         $clientBuilder->setSSLVerification($config['sslVerification']);
     }
     // Configure logging
     if (isset($config['logging']) && $config['logging']) {
         if (isset($config['logObject']) && $config['logObject'] instanceof LoggerInterface) {
             $clientBuilder->setLogger($config['logObject']);
         } else {
             if (isset($config['logPath']) && isset($config['logLevel'])) {
                 $path = $config['logPath'];
                 $level = $config['logLevel'];
                 $logger = ClientBuilder::defaultLogger($path, $level);
                 $clientBuilder->setLogger($logger);
             }
         }
     }
     // Configure Sniff-on-Start
     if (isset($config['sniffOnStart']) && $config['sniffOnStart'] !== null) {
         $clientBuilder->setSniffOnStart($config['sniffOnStart']);
     }
     // Configure Retries
     if (isset($config['retries']) && $config['retries'] !== null) {
         $clientBuilder->setRetries($config['retries']);
     }
     // Configure HTTP Handler
     if (isset($config['httpHandler']) && $config['httpHandler'] !== null) {
         $clientBuilder->setHandler($config['httpHandler']);
     }
     // Configure Connection Pool
     if (isset($config['connectionPool']) && $config['connectionPool'] !== null) {
         $clientBuilder->setConnectionPool($config['connectionPool']);
     }
     // Configure Connection Selector
     if (isset($config['connectionSelector']) && $config['connectionSelector'] !== null) {
         $clientBuilder->setSelector($config['connectionSelector']);
     }
     // Configure Serializer
     if (isset($config['serializer']) && $config['serializer'] !== null) {
         $clientBuilder->setSerializer($config['serializer']);
     }
     // Configure Connection Factory
     if (isset($config['connectionFactory']) && $config['connectionFactory'] !== null) {
         $clientBuilder->setConnectionFactory($config['connectionFactory']);
     }
     // Configure Endpoint
     if (isset($config['endpoint']) && $config['endpoint'] !== null) {
         $clientBuilder->setEndpoint($config['endpoint']);
     }
     // Build and return the client
     return $clientBuilder->build();
 }
 /**
  * Register the service provider.
  *
  * @return void
  */
 public function register()
 {
     $this->app->singleton('elasticsearch', function () {
         $connParams = [];
         $connParams['hosts'] = array('localhost:9200');
         $connParams['logPath'] = storage_path() . '/logs/elasticsearch-' . php_sapi_name() . '.log';
         // merge settings from app/config/elasticsearch.php
         $params = array_merge($connParams, $this->app['config']->get('elasticsearch'));
         $logger = ClientBuilder::defaultLogger($params['logPath']);
         return ClientBuilder::create()->setHosts($params['hosts'])->setLogger($logger)->build();
     });
     // Shortcut so developers don't need to add an Alias in app/config/app.php
     $this->app->booting(function () {
         $loader = AliasLoader::getInstance();
         $loader->alias('Es', 'Shift31\\LaravelElasticsearch\\Facades\\Es');
     });
 }
Beispiel #6
0
 /**
  * Build and configure an Elasticsearch client.
  *
  * @param array $config
  * @return \Elasticsearch\Client
  */
 protected function buildClient(array $config)
 {
     $clientBuilder = ClientBuilder::create();
     $clientBuilder->setHosts($config['hosts']);
     if ($config['sslVerification'] !== null) {
         $clientBuilder->setSSLVerification($config['sslVerification']);
     }
     if ($config['logging']) {
         $path = $config['logging']['path'];
         $level = $config['logging']['level'];
         $logger = ClientBuilder::defaultLogger($path, $level);
         $clientBuilder->setLogger($logger);
     }
     if ($config['sniffOnStart'] !== null) {
         $clientBuilder->setSniffOnStart($config['sniffOnStart']);
     }
     if ($config['retries'] !== null) {
         $clientBuilder->setRetries($config['retries']);
     }
     if ($config['httpHandler'] !== null) {
         $clientBuilder->setHandler($config['httpHandler']);
     }
     if ($config['connectionPool'] !== null) {
         $clientBuilder->setConnectionPool($config['connectionPool']);
     }
     if ($config['connectionSelector'] !== null) {
         $clientBuilder->setSelector($config['connectionSelector']);
     }
     if ($config['serializer'] !== null) {
         $clientBuilder->setSerializer($config['serializer']);
     }
     if ($config['connectionFactory'] !== null) {
         $clientBuilder->setConnectionFactory($config['connectionFactory']);
     }
     if ($config['endpoint'] !== null) {
         $clientBuilder->setEndpoint($config['endpoint']);
     }
     return $clientBuilder->build();
 }
Beispiel #7
0
<?php

/**
 * Created by PhpStorm.
 * User: guivarch
 * Date: 15/09/15
 * Time: 15:10
 */
use Elasticsearch\ClientBuilder;
use Silex\Application;
use Monolog\Logger;
$app['elasticsearch'] = function () {
    $params = array();
    $hosts = self::getConnexion();
    $logger = ClientBuilder::defaultLogger("../log/elastic.log");
    $client = ClientBuilder::create()->setHosts($hosts)->setLogger($logger)->build();
    return $client;
};
 /**
  * Register Elasticsearch client logger.
  */
 protected function registerLogger()
 {
     $this->app->singleton('ductible.client.logger', function ($app) {
         return ClientBuilder::defaultLogger($app->make('config')->get('ductible.log'));
     });
 }
Beispiel #9
0
 /**
  * Create an elastic search instance.
  *
  * @param array $config
  *
  * @return Client
  */
 private function buildClient(array $config)
 {
     $client = ClientBuilder::create()->setHosts($config['hosts']);
     if (isset($config['retries'])) {
         $client->setRetries($config['retries']);
     }
     if (isset($config['logging']) and $config['logging']['enabled'] == true) {
         $logger = ClientBuilder::defaultLogger($config['logging']['path'], $config['logging']['level']);
         $client->setLogger($logger);
     }
     return $client->build();
 }