\Monolog\FormatterElasticaFormatter

Format a log message into an Elastica Document

Summary

Methods
Properties
Constants
__construct()
format()
formatBatch()
detectAndCleanUtf8()
getIndex()
getType()
No public properties found
SIMPLE_DATE
normalize()
normalizeException()
toJson()
getDocument()
$dateFormat
$index
$type
N/A
jsonEncode()
handleJsonError()
throwEncodeError()
No private properties found
N/A

Constants

SIMPLE_DATE

SIMPLE_DATE = "Y-m-d H:i:s"

Properties

$dateFormat

$dateFormat : 

Type

$index

$index : string

Type

string — Elastic search index name

$type

$type : string

Type

string — Elastic search document type

Methods

__construct()

__construct(string  $index, string  $type) 

Parameters

string $index

Elastic Search index name

string $type

Elastic Search document type

format()

format(array  $record) : mixed

Formats a log record.

Parameters

array $record

A record to format

Returns

mixed —

The formatted record

formatBatch()

formatBatch(array  $records) : mixed

Formats a set of log records.

Parameters

array $records

A set of records to format

Returns

mixed —

The formatted set of records

detectAndCleanUtf8()

detectAndCleanUtf8(  $data) 

Detect invalid UTF-8 string characters and convert to valid UTF-8.

Valid UTF-8 input will be left unmodified, but strings containing invalid UTF-8 codepoints will be reencoded as UTF-8 with an assumed original encoding of ISO-8859-15. This conversion may result in incorrect output if the actual encoding was not ISO-8859-15, but it will be clean UTF-8 output and will not rely on expensive and fragile detection algorithms.

Function converts the input in place in the passed variable so that it can be used as a callback for array_walk_recursive.

Parameters

$data

getIndex()

getIndex() : string

Getter index

Returns

string

getType()

getType() : string

Getter type

Returns

string

normalize()

normalize(  $data) 

Parameters

$data

normalizeException()

normalizeException(  $e) 

Parameters

$e

toJson()

toJson(mixed  $data, boolean  $ignoreErrors = false) : string

Return the JSON representation of a value

Parameters

mixed $data
boolean $ignoreErrors

Throws

\RuntimeException

if encoding fails and errors are not ignored

Returns

string

getDocument()

getDocument(array  $record) : \Elastica\Document

Convert a log message into an Elastica Document

Parameters

array $record

Log message

Returns

\Elastica\Document

jsonEncode()

jsonEncode(mixed  $data) : string

Parameters

mixed $data

Returns

string —

JSON encoded data or null on failure

handleJsonError()

handleJsonError(integer  $code, mixed  $data) : string

Handle a json_encode failure.

If the failure is due to invalid string encoding, try to clean the input and encode again. If the second encoding attempt fails, the inital error is not encoding related or the input can't be cleaned then raise a descriptive exception.

Parameters

integer $code

return code of json_last_error function

mixed $data

data that was meant to be encoded

Throws

\RuntimeException

if failure can't be corrected

Returns

string —

JSON encoded data after error correction

throwEncodeError()

throwEncodeError(integer  $code, mixed  $data) 

Throws an exception according to a given code with a customized message

Parameters

integer $code

return code of json_last_error function

mixed $data

data that was meant to be encoded

Throws

\RuntimeException