The LogRecord model

All logging data is modeled using \TYPO3\CMS\Core\Log\LogRecord.

This model has the following properties:

A unique identifier for each request which is created by the TYPO3 bootstrap.
The timestamp with microseconds when the record is created.
The name of the logger which created the log record, usually the fully-qualified class name where the logger has been instantiated.
An integer severity level from \Psr\Log\LogLevel.
The log message string.
Any additional data, encapsulated within an array.

The API to create a new instance of LogRecord is \TYPO3\CMS\Core\Log\Logger:log() or one of the shorthand methods.

The LogRecord class implements the \ArrayAccess interface so that the properties can be accessed like a native array, for example: $logRecord['requestId']. It also implements a __toString() method for your convenience, which returns the log record as a simplified string.

A log record can be processed using log processors or log writers. Log processors are meant to add values to the data property of a log record. For example, if you would like to add a stack trace, use \TYPO3\CMS\Core\Log\Processor\IntrospectionProcessor.

Log writers are used to write a log record to a particular target, for example, a log file.