Sends logs to Fleep.io using Webhook integrations

You'll need a Fleep.io account to use this handler.

  • see https://fleep.io/integrations/webhooks/Fleep Webhooks Documentation
  • author Ando Roots
CloneableInstantiable
ExtendsMonolog\Handler\SocketHandler
Monolog\Handler\AbstractProcessingHandler
Monolog\Handler\AbstractHandler
Monolog\Handler\Handler
ImplementsMonolog\Handler\FormattableHandlerInterface
Monolog\Handler\HandlerInterface
Monolog\Handler\ProcessableHandlerInterface
Monolog\ResettableInterface
Methods
public __construct(string $token, $level = 100, bool $bubble = true)
 
Construct a new Fleep.io Handler.

For instructions on how to create a new web hook in your conversations
see https://fleep.io/integrations/webhooks/

public Monolog\Handler\Handler::__destruct()
public Monolog\Handler\Handler::__sleep()
public Monolog\Handler\SocketHandler::close() : void
 
We will not close a PersistentSocket instance so it can be reused in other requests.

public Monolog\Handler\SocketHandler::closeSocket() : void
 
Close socket, if open

public Monolog\Handler\AbstractHandler::getBubble() : bool
 
Gets the bubbling behavior.

  • return bool true means that this handler allows bubbling. false means that bubbling is not permitted.
public Monolog\Handler\SocketHandler::getChunkSize() : int
 
Get current chunk size

public Monolog\Handler\SocketHandler::getConnectionString() : string
 
Get current connection string

public Monolog\Handler\SocketHandler::getConnectionTimeout() : float
 
Get current connection timeout setting

public Monolog\Handler\AbstractProcessingHandler::getFormatter() : Monolog\Formatter\FormatterInterface
 
{@inheritdoc}

public Monolog\Handler\AbstractHandler::getLevel() : int
 
Gets minimum logging level at which this handler will be triggered.

  • return int
public Monolog\Handler\SocketHandler::getTimeout() : float
 
Get current in-transfer timeout

public Monolog\Handler\SocketHandler::getWritingTimeout() : float
 
Get current local writing timeout

  • return float
public Monolog\Handler\AbstractProcessingHandler::handle(array $record) : bool
 
{@inheritdoc}

public Monolog\Handler\Handler::handleBatch(array $records) : void
 
{@inheritdoc}

public Monolog\Handler\SocketHandler::isConnected() : bool
 
Check to see if the socket is currently available.

UDP might appear to be connected but might fail when writing. See http://php.net/fsockopen for details.

public Monolog\Handler\AbstractHandler::isHandling(array $record) : bool
 
{@inheritdoc}

public Monolog\Handler\SocketHandler::isPersistent() : bool
 
Get persistent setting

public Monolog\Handler\AbstractProcessingHandler::popProcessor() : callable
 
{@inheritdoc}

public Monolog\Handler\AbstractProcessingHandler::pushProcessor(callable $callback) : Monolog\Handler\HandlerInterface
 
{@inheritdoc}

  • suppress PhanTypeMismatchReturn
public Monolog\Handler\AbstractProcessingHandler::reset()
public Monolog\Handler\AbstractHandler::setBubble(bool $bubble) : self
 
Sets the bubbling behavior.

  • return self
public Monolog\Handler\SocketHandler::setChunkSize(int $bytes) : self
 
Set chunk size. Only has effect during connection in the writing cycle.

public Monolog\Handler\SocketHandler::setConnectionTimeout(float $seconds) : self
 
Set connection timeout. Only has effect before we connect.

  • see http://php.net/manual/en/function.fsockopen.php
public Monolog\Handler\AbstractProcessingHandler::setFormatter(Monolog\Formatter\FormatterInterface $formatter) : Monolog\Handler\HandlerInterface
 
{@inheritdoc}

  • suppress PhanTypeMismatchReturn
public Monolog\Handler\AbstractHandler::setLevel( $level) : self
 
Sets minimum logging level at which this handler will be triggered.

  • return self
public Monolog\Handler\SocketHandler::setPersistent(bool $persistent) : self
 
Set socket connection to be persistent. It only has effect before the connection is initiated.

public Monolog\Handler\SocketHandler::setTimeout(float $seconds) : self
 
Set write timeout. Only has effect before we connect.

  • see http://php.net/manual/en/function.stream-set-timeout.php
public Monolog\Handler\SocketHandler::setWritingTimeout(float $seconds) : self
 
Set writing timeout. Only has effect during connection in the writing cycle.

    public write(array $record) : void
     
    Handles a log record

    Constants
    protected Monolog\Handler\FleepHookHandler::FLEEP_HOOK_URI = '/hook/'
    protected Monolog\Handler\FleepHookHandler::FLEEP_HOST = 'fleep.io'
    Properties
    protected Monolog\Handler\AbstractHandler::$bubble
    protected Monolog\Handler\AbstractProcessingHandler::$formatter
     


    • var FormatterInterface
    protected Monolog\Handler\AbstractHandler::$level
    protected Monolog\Handler\AbstractProcessingHandler::$processors
     


    • var callable[]
    protected $token
     


    • var string Webhook token (specifies the conversation where logs are sent)
    Methods
    protected Monolog\Handler\SocketHandler::fsockopen()
     
    Wrapper to allow mocking

    protected Monolog\Handler\SocketHandler::fwrite( $data)
     
    Wrapper to allow mocking

    protected generateDataStream(array $record) : string
     
    {@inheritdoc}

    protected getDefaultFormatter() : Monolog\Formatter\FormatterInterface
     
    Returns the default formatter to use with this handler

    Overloaded to remove empty context and extra arrays from the end of the log message.

    • return LineFormatter
    protected Monolog\Handler\SocketHandler::getResource()
     


    • return resource|null
    protected Monolog\Handler\SocketHandler::pfsockopen()
     
    Wrapper to allow mocking

    protected Monolog\Handler\AbstractProcessingHandler::processRecord(array $record) : array
     
    Processes a record.

    protected Monolog\Handler\AbstractProcessingHandler::resetProcessors() : void
    protected Monolog\Handler\SocketHandler::streamGetMetadata()
     
    Wrapper to allow mocking

    protected Monolog\Handler\SocketHandler::streamSetChunkSize()
     
    Wrapper to allow mocking

    • see http://php.net/manual/en/function.stream-set-chunk-size.php
    protected Monolog\Handler\SocketHandler::streamSetTimeout()
     
    Wrapper to allow mocking

    • see http://php.net/manual/en/function.stream-set-timeout.php
    Methods
    private buildContent(array $record) : string
     
    Builds the body of API call

    private buildHeader(string $content) : string
     
    Builds the header of the API Call

    private Monolog\Handler\SocketHandler::connect() : void
    private Monolog\Handler\SocketHandler::connectIfNotConnected()
    private Monolog\Handler\SocketHandler::createSocketResource() : void
    private Monolog\Handler\SocketHandler::setSocketTimeout() : void
    private Monolog\Handler\SocketHandler::setStreamChunkSize() : void
    private Monolog\Handler\SocketHandler::validateTimeout( $value)
    private Monolog\Handler\SocketHandler::writeToSocket(string $data) : void
    private Monolog\Handler\SocketHandler::writingIsTimedOut(int $sent) : bool
    © 2020 Bruce Wells
    Search Namespaces \ Classes
    ConfigurationNumbers (0-9.) only