MongoDBFormatter
in package
implements
FormatterInterface
Formats a record for use with the MongoDBHandler.
Tags
Interfaces, Classes and Traits
- FormatterInterface
- Interface for formatters
Table of Contents
- $exceptionTraceAsString : bool
- $isLegacyMongoExt : bool
- $maxNestingLevel : int
- __construct() : mixed
- format() : array<string|int, mixed>
- Formats a log record.
- formatBatch() : array<string|int, array<string|int, mixed>>
- Formats a set of log records.
- formatArray() : array<string|int, mixed>|string
- formatDate() : UTCDateTime
- formatException() : array<string|int, mixed>|string
- formatObject() : array<string|int, mixed>|string
- getMongoDbDateTime() : UTCDateTime
- legacyGetMongoDbDateTime() : UTCDateTime
- This is needed to support MongoDB Driver v1.19 and below
Properties
$exceptionTraceAsString
private
bool
$exceptionTraceAsString
$isLegacyMongoExt
private
bool
$isLegacyMongoExt
$maxNestingLevel
private
int
$maxNestingLevel
Methods
__construct()
public
__construct([int $maxNestingLevel = 3 ][, bool $exceptionTraceAsString = true ]) : mixed
Parameters
- $maxNestingLevel : int = 3
-
0 means infinite nesting, the $record itself is level 1, $record['context'] is 2
- $exceptionTraceAsString : bool = true
-
set to false to log exception traces as a sub documents instead of strings
Return values
mixed —format()
Formats a log record.
public
format(array<string|int, mixed> $record) : array<string|int, mixed>
Parameters
- $record : array<string|int, mixed>
-
A record to format
Return values
array<string|int, mixed> —formatBatch()
Formats a set of log records.
public
formatBatch(array<string|int, mixed> $records) : array<string|int, array<string|int, mixed>>
Parameters
- $records : array<string|int, mixed>
-
A set of records to format
Return values
array<string|int, array<string|int, mixed>> —formatArray()
protected
formatArray(array<string|int, mixed> $array, int $nestingLevel) : array<string|int, mixed>|string
Parameters
- $array : array<string|int, mixed>
- $nestingLevel : int
Return values
array<string|int, mixed>|string —Array except when max nesting level is reached then a string "[...]"
formatDate()
protected
formatDate(DateTimeInterface $value, int $nestingLevel) : UTCDateTime
Parameters
- $value : DateTimeInterface
- $nestingLevel : int
Return values
UTCDateTime —formatException()
protected
formatException(Throwable $exception, int $nestingLevel) : array<string|int, mixed>|string
Parameters
- $exception : Throwable
- $nestingLevel : int
Return values
array<string|int, mixed>|string —formatObject()
protected
formatObject(mixed $value, int $nestingLevel) : array<string|int, mixed>|string
Parameters
- $value : mixed
- $nestingLevel : int
Return values
array<string|int, mixed>|string —getMongoDbDateTime()
private
getMongoDbDateTime(DateTimeInterface $value) : UTCDateTime
Parameters
- $value : DateTimeInterface
Return values
UTCDateTime —legacyGetMongoDbDateTime()
This is needed to support MongoDB Driver v1.19 and below
private
legacyGetMongoDbDateTime(DateTimeInterface $value) : UTCDateTime
See https://github.com/mongodb/mongo-php-driver/issues/426
It can probably be removed in 2.1 or later once MongoDB's 1.2 is released and widely adopted
Parameters
- $value : DateTimeInterface