0byt3m1n1
Path:
/
home
/
k
/
a
/
s
/
kassiope
/
www
/
vendor
/
css-crush
/
css-crush
/
lib
/
CssCrush
/
[
Home
]
File: Logger.php
<?php /** * * PSR-3 compatible logger. * */ namespace CssCrush; class Logger { /** * System is unusable. * * @param string $message * @param array $context * @return null */ public function emergency($message, array $context = []) { $this->error($message, $context); } /** * Action must be taken immediately. * * Example: Entire website down, database unavailable, etc. This should * trigger the SMS alerts and wake you up. * * @param string $message * @param array $context * @return null */ public function alert($message, array $context = []) { $this->error($message, $context); } /** * Critical conditions. * * Example: Application component unavailable, unexpected exception. * * @param string $message * @param array $context * @return null */ public function critical($message, array $context = []) { $this->error($message, $context); } /** * Runtime errors that do not require immediate action but should typically * be logged and monitored. * * @param string $message * @param array $context * @return null */ public function error($message, array $context = []) { trigger_error($message, E_USER_ERROR); } /** * Exceptional occurrences that are not errors. * * Example: Use of deprecated APIs, poor use of an API, undesirable things * that are not necessarily wrong. * * @param string $message * @param array $context * @return null */ public function warning($message, array $context = []) { trigger_error($message, E_USER_WARNING); } /** * Normal but significant events. * * @param string $message * @param array $context * @return null */ public function notice($message, array $context = []) { trigger_error($message, E_USER_NOTICE); } /** * Interesting events. * * Example: User logs in, SQL logs. * * @param string $message * @param array $context * @return null */ public function info($message, array $context = []) { $this->debug($message, $context); } /** * Detailed debug information. * * @param string $message * @param array $context * @return null */ public function debug($message, array $context = []) { if (! empty($context['label'])) { $label = PHP_EOL . "$label" . PHP_EOL . str_repeat('=', strlen($label)) . PHP_EOL; } else { $label = ''; } if (is_string($message)) { Crush::$process->debugLog[] = "$label$message"; } else { ob_start(); ! empty($context['var_dump']) ? var_dump($message) : print_r($message); Crush::$process->debugLog[] = $label . ob_get_clean(); } } /** * Logs with an arbitrary level. * * @param mixed $level * @param string $message * @param array $context * @return null */ public function log($level, $message, array $context = []) { $log_levels = array_flip(get_class_methods(__CLASS__)); unset($log_levels['log']); if (isset($log_levels[$level])) { return $this->$level($message, $context); } } }