class Logger implements ILogger

Logs messages and exceptions to files and sends email notifications on critical errors.

Properties

$directory

name of the directory where errors should be logged

string|string[]|null $email
$fromEmail

sender of email notifications

$emailSnooze

interval for sending email is 2 days

$mailer

Methods

__construct(string|null $directory, string|array|null $email = null, BlueScreen|null $blueScreen = null)

No description

log(mixed $message, string $level = self::INFO)

Logs message or exception to file and sends email notification.

static string
formatMessage(mixed $message)

No description

static string
formatLogLine(mixed $message, string|null $exceptionFile = null)

No description

string
getExceptionFile(Throwable $exception, string $level = self::EXCEPTION)

No description

string
logException(Throwable $exception, string|null $file = null)

Logs exception to the file if file doesn't exist.

void
sendEmail(mixed $message)

No description

Details

at line 40
__construct(string|null $directory, string|array|null $email = null, BlueScreen|null $blueScreen = null)

No description

Parameters

string|null $directory
string|array|null $email
BlueScreen|null $blueScreen

at line 54
log(mixed $message, string $level = self::INFO)

Logs message or exception to file and sends email notification.

For levels ERROR, EXCEPTION and CRITICAL it sends email.

Parameters

mixed $message
string $level

at line 84
static string formatMessage(mixed $message)

No description

Parameters

mixed $message

Return Value

string

at line 105
static string formatLogLine(mixed $message, string|null $exceptionFile = null)

No description

Parameters

mixed $message
string|null $exceptionFile

Return Value

string

at line 116
string getExceptionFile(Throwable $exception, string $level = self::EXCEPTION)

No description

Parameters

Throwable $exception
string $level

Return Value

string

at line 146
protected string logException(Throwable $exception, string|null $file = null)

Logs exception to the file if file doesn't exist.

Parameters

Throwable $exception
string|null $file

Return Value

string

logged error filename

at line 155
protected void sendEmail(mixed $message)

No description

Parameters

mixed $message

Return Value

void