PHP Class Webiny\Component\Logger\Logger

Inheritance: use trait Webiny\Component\StdLib\StdLibTrait, use trait Webiny\Component\StdLib\ComponentTrait
Show file Open project: Webiny/Framework Class Usage Examples

Public Methods

Method Description
__call ( $name, $arguments ) : mixed Call a method on driver instance Since we are wrapping an actual driver instance with this Logger object, we need a way to implement this magic method to forward the call to driver instance
__construct ( string $name, Webiny\Component\Logger\Bridge\LoggerDriverInterface $driverInstance ) : Logger Create new logger using given name and driver.
A name is used to identify log messages from different loggers.

Having two loggers ("Payment Gateway" and "Invoice Payment") would result in the following output:

[Payment Gateway][info] Request sent.
[Invoice Payment][alert] Paid invoice amount is too small.
alert ( string $message, array $context = [] ) : null Action must be taken immediately.
critical ( string $message, array $context = [] ) : null Critical conditions.
debug ( string $message, array $context = [] ) : null Detailed debug information.
emergency ( string $message, array $context = [] ) : null System is unusable.
error ( string $message, array $context = [] ) : null Runtime errors that do not require immediate action but should typically be logged and monitored.
info ( string $message, array $context = [] ) : null Interesting events.
log ( mixed $level, string $message, array $context = [] ) : null Logs with an arbitrary level.
notice ( string $message, array $context = [] ) : null Normal but significant events.
warning ( string $message, array $context = [] ) : null Exceptional occurrences that are not errors.

Method Details

__call() public method

Call a method on driver instance Since we are wrapping an actual driver instance with this Logger object, we need a way to implement this magic method to forward the call to driver instance
public __call ( $name, $arguments ) : mixed
$name
$arguments
return mixed

__construct() public method

Create new logger using given name and driver.
A name is used to identify log messages from different loggers.

Having two loggers ("Payment Gateway" and "Invoice Payment") would result in the following output:

[Payment Gateway][info] Request sent.
[Invoice Payment][alert] Paid invoice amount is too small.
public __construct ( string $name, Webiny\Component\Logger\Bridge\LoggerDriverInterface $driverInstance ) : Logger
$name string Logger name
$driverInstance Webiny\Component\Logger\Bridge\LoggerDriverInterface
return Logger

alert() public method

Example: Entire website down, database unavailable, etc. This should trigger the SMS alerts and wake you up.
public alert ( string $message, array $context = [] ) : null
$message string
$context array
return null

critical() public method

Example: Application component unavailable, unexpected exception.
public critical ( string $message, array $context = [] ) : null
$message string
$context array
return null

debug() public method

Detailed debug information.
public debug ( string $message, array $context = [] ) : null
$message string
$context array
return null

emergency() public method

System is unusable.
public emergency ( string $message, array $context = [] ) : null
$message string
$context array
return null

error() public method

Runtime errors that do not require immediate action but should typically be logged and monitored.
public error ( string $message, array $context = [] ) : null
$message string
$context array
return null

info() public method

Example: User logs in, SQL logs.
public info ( string $message, array $context = [] ) : null
$message string
$context array
return null

log() public method

Logs with an arbitrary level.
public log ( mixed $level, string $message, array $context = [] ) : null
$level mixed
$message string
$context array
return null

notice() public method

Normal but significant events.
public notice ( string $message, array $context = [] ) : null
$message string
$context array
return null

warning() public method

Example: Use of deprecated APIs, poor use of an API, undesirable things that are not necessarily wrong.
public warning ( string $message, array $context = [] ) : null
$message string
$context array
return null