ChromePHPHandler
extends AbstractProcessingHandler
in package
uses
WebRequestRecognizerTrait
Handler sending logs to the ChromePHP extension (http://www.chromephp.com/)
This also works out of the box with Firefox 43+
Tags
Table of Contents
Constants
- HEADER_NAME = 'X-ChromeLogger-Data'
- Header name
- USER_AGENT_REGEX = '{\b(?:Chrome/\d+(?:\.\d+)*|HeadlessChrome|Firefox/(?:4[3-9]|[5-9]\d|\d{3,})(?:\.\d)*)\b}'
- Regular expression to detect supported browsers (matches any Chrome, or Firefox 43+)
- VERSION = '4.0'
- Version of the extension
Properties
- $bubble : bool
- $formatter : FormatterInterface|null
- $initialized : bool
- $json : array<string|int, mixed>
- $level : Level
- $overflowed : bool
- Tracks whether we sent too much data
- $processors : array<string|int, callable>
- $sendHeaders : bool
Methods
- __construct() : mixed
- __destruct() : mixed
- __sleep() : mixed
- close() : void
- Closes the handler.
- getBubble() : bool
- Gets the bubbling behavior.
- getFormatter() : FormatterInterface
- getLevel() : Level
- Gets minimum logging level at which this handler will be triggered.
- handle() : bool
- Handles a record.
- handleBatch() : void
- Handles a set of records at once.
- isHandling() : bool
- Checks whether the given record will be handled by this handler.
- popProcessor() : callable
- pushProcessor() : HandlerInterface
- reset() : void
- setBubble() : $this
- Sets the bubbling behavior.
- setFormatter() : HandlerInterface
- setLevel() : $this
- Sets minimum logging level at which this handler will be triggered.
- getDefaultFormatter() : FormatterInterface
- headersAccepted() : bool
- Verifies if the headers are accepted by the current user agent
- isWebRequest() : bool
- Checks if PHP's serving a web request
- processRecord() : LogRecord
- resetProcessors() : void
- send() : void
- Sends the log header
- sendHeader() : void
- Send header string to the client
- write() : void
- Creates & sends header for a record
Constants
HEADER_NAME
Header name
protected
mixed
HEADER_NAME
= 'X-ChromeLogger-Data'
USER_AGENT_REGEX
Regular expression to detect supported browsers (matches any Chrome, or Firefox 43+)
protected
mixed
USER_AGENT_REGEX
= '{\b(?:Chrome/\d+(?:\.\d+)*|HeadlessChrome|Firefox/(?:4[3-9]|[5-9]\d|\d{3,})(?:\.\d)*)\b}'
VERSION
Version of the extension
protected
mixed
VERSION
= '4.0'
Properties
$bubble
protected
bool
$bubble
= true
$formatter
protected
FormatterInterface|null
$formatter
= null
$initialized
protected
static bool
$initialized
= false
$json
protected
static array<string|int, mixed>
$json
= ['version' => self::VERSION, 'columns' => ['label', 'log', 'backtrace', 'type'], 'rows' => []]
$level
protected
Level
$level
= \Monolog\Level::Debug
$overflowed
Tracks whether we sent too much data
protected
static bool
$overflowed
= false
Chrome limits the headers to 4KB, so when we sent 3KB we stop sending
$processors
protected
array<string|int, callable>
$processors
= []
Tags
$sendHeaders
protected
static bool
$sendHeaders
= true
Methods
__construct()
public
__construct([int|string|Level $level = Level::Debug ][, bool $bubble = true ]) : mixed
Parameters
- $level : int|string|Level = Level::Debug
-
The minimum logging level at which this handler will be triggered
- $bubble : bool = true
-
Whether the messages that are handled can bubble up the stack or not
Tags
__destruct()
public
__destruct() : mixed
__sleep()
public
__sleep() : mixed
close()
Closes the handler.
public
close() : void
Tags
getBubble()
Gets the bubbling behavior.
public
getBubble() : bool
Return values
bool —true means that this handler allows bubbling. false means that bubbling is not permitted.
getFormatter()
public
getFormatter() : FormatterInterface
Tags
Return values
FormatterInterfacegetLevel()
Gets minimum logging level at which this handler will be triggered.
public
getLevel() : Level
Return values
Levelhandle()
Handles a record.
public
handle(LogRecord $record) : bool
Parameters
- $record : LogRecord
-
The record to handle
Tags
Return values
bool —true means that this handler handled the record, and that bubbling is not permitted. false means the record was either not processed or that this handler allows bubbling.
handleBatch()
Handles a set of records at once.
public
handleBatch(array<string|int, mixed> $records) : void
Parameters
- $records : array<string|int, mixed>
-
The records to handle
Tags
isHandling()
Checks whether the given record will be handled by this handler.
public
isHandling(LogRecord $record) : bool
Parameters
- $record : LogRecord
-
Partial log record having only a level initialized
Tags
Return values
boolpopProcessor()
public
popProcessor() : callable
Tags
Return values
callablepushProcessor()
public
pushProcessor(callable $callback) : HandlerInterface
Parameters
- $callback : callable
Tags
Return values
HandlerInterfacereset()
public
reset() : void
setBubble()
Sets the bubbling behavior.
public
setBubble(bool $bubble) : $this
Parameters
- $bubble : bool
-
true means that this handler allows bubbling. false means that bubbling is not permitted.
Return values
$thissetFormatter()
public
setFormatter(FormatterInterface $formatter) : HandlerInterface
Parameters
- $formatter : FormatterInterface
Tags
Return values
HandlerInterfacesetLevel()
Sets minimum logging level at which this handler will be triggered.
public
setLevel(Level|LogLevel::* $level) : $this
Parameters
- $level : Level|LogLevel::*
-
Level or level name
Tags
Return values
$thisgetDefaultFormatter()
protected
getDefaultFormatter() : FormatterInterface
Tags
Return values
FormatterInterfaceheadersAccepted()
Verifies if the headers are accepted by the current user agent
protected
headersAccepted() : bool
Return values
boolisWebRequest()
Checks if PHP's serving a web request
protected
isWebRequest() : bool
Return values
boolprocessRecord()
protected
processRecord(LogRecord $record) : LogRecord
Parameters
- $record : LogRecord
Return values
LogRecordresetProcessors()
protected
resetProcessors() : void
send()
Sends the log header
protected
send() : void
Tags
sendHeader()
Send header string to the client
protected
sendHeader(string $header, string $content) : void
Parameters
- $header : string
- $content : string
write()
Creates & sends header for a record
protected
write(LogRecord $record) : void
Parameters
- $record : LogRecord