monolog-wp-cli

Reference: WPCLIHandler

MHCG\Monolog\Handler\WPCLIHandler is a Monolog handler that forwards log records to WP-CLI output methods.

Runtime constraints

Constructor

new WPCLIHandler($level = Logger::WARNING, $bubble = true, $verbose = false, ?array $loggerMap = null)

When supplied, $loggerMap is merged over getDefaultLoggerMap() so callers only need to provide the levels they want to change. Invalid overrides are rejected in the constructor.

Each map entry uses this shape:

[
	Logger::NOTICE => [
		'method' => 'log',
		'includeLevelName' => true,
	],
	Logger::ERROR => [
		'method' => 'error',
		'includeLevelName' => true,
		'exit' => false,
	],
]

Default formatter behaviour

That means Monolog context and extra data are not shown in standard output. They are only rendered when verbose output is enabled.

Verbose output is enabled when either:

Example verbose output from the WordPress integration smoke fixture:

(NOTICE) context from wp {"foo":"bar"} []

In this output shape, the trailing [] is Monolog extra data when no extra keys are present.

Default Monolog-to-WP-CLI mapping

Monolog level WP-CLI method includeLevelName exit
DEBUG debug no n/a
INFO log no n/a
NOTICE log yes n/a
WARNING warning yes n/a
ERROR error yes false
CRITICAL error yes true
ALERT error yes true
EMERGENCY error yes true

Handling behaviour

Public static methods