Fr3nch13/CakePHP Utilities

ArrayLog extends BaseLog
in package

Array logger.

Collects log messages in memory. Intended primarily for usage in testing where using mocks would be complicated. But can also be used in scenarios where you need to capture logs in application code.

Table of Contents

Properties

$_config  : array<string, mixed>
Runtime config
$_configInitialized  : bool
Whether the config property has already been configured with defaults
$_defaultConfig  : array<string, mixed>
Default config for this class
$content  : array<string|int, string>
Captured messages
$formatter  : AbstractFormatter

Methods

__construct()  : mixed
__construct method
alert()  : void
Action must be taken immediately.
clear()  : void
Reset internal storage.
configShallow()  : $this
Merge provided config with existing config. Unlike `config()` which does a recursive merge for nested keys, this method does a simple merge.
critical()  : void
Critical conditions.
debug()  : void
Detailed debug information.
emergency()  : void
System is unusable.
error()  : void
Runtime errors that do not require immediate action but should typically be logged and monitored.
getConfig()  : mixed
Returns the config.
getConfigOrFail()  : mixed
Returns the config for this specific key.
info()  : void
Interesting events.
levels()  : array<string|int, string>
Get the levels this logger is interested in.
log()  : void
Implements writing to the internal storage.
notice()  : void
Normal but significant events.
read()  : array<string|int, string>
Read the internal storage
scopes()  : array<string|int, string>|false
Get the scopes this logger is interested in.
setConfig()  : $this
Sets the config.
warning()  : void
Exceptional occurrences that are not errors.
_configDelete()  : void
Deletes a single config key.
_configRead()  : mixed
Reads a config key.
_configWrite()  : void
Writes a config key.
_format()  : string
Formats the message to be logged.
interpolate()  : string
Replaces placeholders in message string with context values.

Properties

$_configInitialized

Whether the config property has already been configured with defaults

protected bool $_configInitialized = false

$_defaultConfig

Default config for this class

protected array<string, mixed> $_defaultConfig = ['levels' => [], 'scopes' => [], 'formatter' => ['className' => \Cake\Log\Formatter\DefaultFormatter::class, 'includeDate' => false]]

$content

Captured messages

protected array<string|int, string> $content = []

Methods

__construct()

__construct method

public __construct([array<string, mixed> $config = [] ]) : mixed
Parameters
$config : array<string, mixed> = []

Configuration array

alert()

Action must be taken immediately.

public alert(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void

Example: Entire website down, database unavailable, etc. This should trigger the SMS alerts and wake you up.

Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

clear()

Reset internal storage.

public clear() : void

configShallow()

Merge provided config with existing config. Unlike `config()` which does a recursive merge for nested keys, this method does a simple merge.

public configShallow(array<string, mixed>|string $key[, mixed|null $value = null ]) : $this

Setting a specific value:

$this->configShallow('key', $value);

Setting a nested value:

$this->configShallow('some.nested.key', $value);

Updating multiple config settings at the same time:

$this->configShallow(['one' => 'value', 'another' => 'value']);
Parameters
$key : array<string, mixed>|string

The key to set, or a complete array of configs.

$value : mixed|null = null

The value to set.

Return values
$this

critical()

Critical conditions.

public critical(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void

Example: Application component unavailable, unexpected exception.

Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

debug()

Detailed debug information.

public debug(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void
Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

emergency()

System is unusable.

public emergency(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void
Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

error()

Runtime errors that do not require immediate action but should typically be logged and monitored.

public error(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void
Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

getConfig()

Returns the config.

public getConfig([string|null $key = null ][, mixed $default = null ]) : mixed

Usage

Reading the whole config:

$this->getConfig();

Reading a specific value:

$this->getConfig('key');

Reading a nested value:

$this->getConfig('some.nested.key');

Reading with default value:

$this->getConfig('some-key', 'default-value');
Parameters
$key : string|null = null

The key to get or null for the whole config.

$default : mixed = null

The return value when the key does not exist.

Return values
mixed

Configuration data at the named key or null if the key does not exist.

getConfigOrFail()

Returns the config for this specific key.

public getConfigOrFail(string $key) : mixed

The config value for this key must exist, it can never be null.

Parameters
$key : string

The key to get.

Tags
throws
InvalidArgumentException
Return values
mixed

Configuration data at the named key

info()

Interesting events.

public info(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void

Example: User logs in, SQL logs.

Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

levels()

Get the levels this logger is interested in.

public levels() : array<string|int, string>
Return values
array<string|int, string>

log()

Implements writing to the internal storage.

public log(mixed $level, string $message[, array<string|int, mixed> $context = [] ]) : void
Parameters
$level : mixed

The severity level of log you are making.

$message : string

The message you want to log.

$context : array<string|int, mixed> = []

Additional information about the logged message

Tags
see
Log::$_levels
Return values
void

success of write.

notice()

Normal but significant events.

public notice(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void
Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

read()

Read the internal storage

public read() : array<string|int, string>
Return values
array<string|int, string>

scopes()

Get the scopes this logger is interested in.

public scopes() : array<string|int, string>|false
Return values
array<string|int, string>|false

setConfig()

Sets the config.

public setConfig(array<string, mixed>|string $key[, mixed|null $value = null ][, bool $merge = true ]) : $this

Usage

Setting a specific value:

$this->setConfig('key', $value);

Setting a nested value:

$this->setConfig('some.nested.key', $value);

Updating multiple config settings at the same time:

$this->setConfig(['one' => 'value', 'another' => 'value']);
Parameters
$key : array<string, mixed>|string

The key to set, or a complete array of configs.

$value : mixed|null = null

The value to set.

$merge : bool = true

Whether to recursively merge or overwrite existing config, defaults to true.

Tags
throws
CakeException

When trying to set a key that is invalid.

Return values
$this

warning()

Exceptional occurrences that are not errors.

public warning(string|Stringable $message[, array<string|int, mixed> $context = [] ]) : void

Example: Use of deprecated APIs, poor use of an API, undesirable things that are not necessarily wrong.

Parameters
$message : string|Stringable
$context : array<string|int, mixed> = []

_configDelete()

Deletes a single config key.

protected _configDelete(string $key) : void
Parameters
$key : string

Key to delete.

Tags
throws
CakeException

if attempting to clobber existing config

_configRead()

Reads a config key.

protected _configRead(string|null $key) : mixed
Parameters
$key : string|null

Key to read.

_configWrite()

Writes a config key.

protected _configWrite(array<string, mixed>|string $key, mixed $value[, string|bool $merge = false ]) : void
Parameters
$key : array<string, mixed>|string

Key to write to.

$value : mixed

Value to write.

$merge : string|bool = false

True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false.

Tags
throws
CakeException

if attempting to clobber existing config

_format()

Formats the message to be logged.

protected _format(string $message[, array<string|int, mixed> $context = [] ]) : string

Call interpolate() directly from your log engine and format the message in a formatter.

The context can optionally be used by log engines to interpolate variables or add additional info to the logged message.

Parameters
$message : string

The message to be formatted.

$context : array<string|int, mixed> = []

Additional logging information for the message.

Return values
string

interpolate()

Replaces placeholders in message string with context values.

protected interpolate(string $message[, array<string|int, mixed> $context = [] ]) : string
Parameters
$message : string

Formatted string

$context : array<string|int, mixed> = []

Context for placeholder values.

Return values
string

        
On this page

Search results