Constants

SIMPLE_DATE

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

SIMPLE_FORMAT

SIMPLE_FORMAT = "[%datetime%] %channel%.%level_name%: %message% %context% %extra%\n"

Properties

$dateFormat

$dateFormat : 

Type

$format

$format : 

Type

$allowInlineLineBreaks

$allowInlineLineBreaks : 

Type

$ignoreEmptyContextAndExtra

$ignoreEmptyContextAndExtra : 

Type

$includeStacktraces

$includeStacktraces : 

Type

Methods

__construct()

__construct(string  $format = null, string  $dateFormat = null, boolean  $allowInlineLineBreaks = false, boolean  $ignoreEmptyContextAndExtra = false) 

Parameters

string $format

The format of the message

string $dateFormat

The format of the timestamp: one supported by DateTime::format

boolean $allowInlineLineBreaks

Whether to allow inline line breaks in log entries

boolean $ignoreEmptyContextAndExtra

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

includeStacktraces()

includeStacktraces(  $include = true) 

Parameters

$include

allowInlineLineBreaks()

allowInlineLineBreaks(  $allow = true) 

Parameters

$allow

ignoreEmptyContextAndExtra()

ignoreEmptyContextAndExtra(  $ignore = true) 

Parameters

$ignore

stringify()

stringify(  $value) 

Parameters

$value

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

convertToString()

convertToString(  $data) 

Parameters

$data

replaceNewlines()

replaceNewlines(  $str) 

Parameters

$str

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