1*d10b5556SXylle<?php 2*d10b5556SXylle 3*d10b5556SXyllenamespace Psr\Log; 4*d10b5556SXylle 5*d10b5556SXylle/** 6*d10b5556SXylle * This is a simple Logger implementation that other Loggers can inherit from. 7*d10b5556SXylle * 8*d10b5556SXylle * It simply delegates all log-level-specific methods to the `log` method to 9*d10b5556SXylle * reduce boilerplate code that a simple Logger that does the same thing with 10*d10b5556SXylle * messages regardless of the error level has to implement. 11*d10b5556SXylle */ 12*d10b5556SXylleabstract class AbstractLogger implements LoggerInterface 13*d10b5556SXylle{ 14*d10b5556SXylle /** 15*d10b5556SXylle * System is unusable. 16*d10b5556SXylle * 17*d10b5556SXylle * @param string $message 18*d10b5556SXylle * @param mixed[] $context 19*d10b5556SXylle * 20*d10b5556SXylle * @return void 21*d10b5556SXylle */ 22*d10b5556SXylle public function emergency($message, array $context = array()) 23*d10b5556SXylle { 24*d10b5556SXylle $this->log(LogLevel::EMERGENCY, $message, $context); 25*d10b5556SXylle } 26*d10b5556SXylle 27*d10b5556SXylle /** 28*d10b5556SXylle * Action must be taken immediately. 29*d10b5556SXylle * 30*d10b5556SXylle * Example: Entire website down, database unavailable, etc. This should 31*d10b5556SXylle * trigger the SMS alerts and wake you up. 32*d10b5556SXylle * 33*d10b5556SXylle * @param string $message 34*d10b5556SXylle * @param mixed[] $context 35*d10b5556SXylle * 36*d10b5556SXylle * @return void 37*d10b5556SXylle */ 38*d10b5556SXylle public function alert($message, array $context = array()) 39*d10b5556SXylle { 40*d10b5556SXylle $this->log(LogLevel::ALERT, $message, $context); 41*d10b5556SXylle } 42*d10b5556SXylle 43*d10b5556SXylle /** 44*d10b5556SXylle * Critical conditions. 45*d10b5556SXylle * 46*d10b5556SXylle * Example: Application component unavailable, unexpected exception. 47*d10b5556SXylle * 48*d10b5556SXylle * @param string $message 49*d10b5556SXylle * @param mixed[] $context 50*d10b5556SXylle * 51*d10b5556SXylle * @return void 52*d10b5556SXylle */ 53*d10b5556SXylle public function critical($message, array $context = array()) 54*d10b5556SXylle { 55*d10b5556SXylle $this->log(LogLevel::CRITICAL, $message, $context); 56*d10b5556SXylle } 57*d10b5556SXylle 58*d10b5556SXylle /** 59*d10b5556SXylle * Runtime errors that do not require immediate action but should typically 60*d10b5556SXylle * be logged and monitored. 61*d10b5556SXylle * 62*d10b5556SXylle * @param string $message 63*d10b5556SXylle * @param mixed[] $context 64*d10b5556SXylle * 65*d10b5556SXylle * @return void 66*d10b5556SXylle */ 67*d10b5556SXylle public function error($message, array $context = array()) 68*d10b5556SXylle { 69*d10b5556SXylle $this->log(LogLevel::ERROR, $message, $context); 70*d10b5556SXylle } 71*d10b5556SXylle 72*d10b5556SXylle /** 73*d10b5556SXylle * Exceptional occurrences that are not errors. 74*d10b5556SXylle * 75*d10b5556SXylle * Example: Use of deprecated APIs, poor use of an API, undesirable things 76*d10b5556SXylle * that are not necessarily wrong. 77*d10b5556SXylle * 78*d10b5556SXylle * @param string $message 79*d10b5556SXylle * @param mixed[] $context 80*d10b5556SXylle * 81*d10b5556SXylle * @return void 82*d10b5556SXylle */ 83*d10b5556SXylle public function warning($message, array $context = array()) 84*d10b5556SXylle { 85*d10b5556SXylle $this->log(LogLevel::WARNING, $message, $context); 86*d10b5556SXylle } 87*d10b5556SXylle 88*d10b5556SXylle /** 89*d10b5556SXylle * Normal but significant events. 90*d10b5556SXylle * 91*d10b5556SXylle * @param string $message 92*d10b5556SXylle * @param mixed[] $context 93*d10b5556SXylle * 94*d10b5556SXylle * @return void 95*d10b5556SXylle */ 96*d10b5556SXylle public function notice($message, array $context = array()) 97*d10b5556SXylle { 98*d10b5556SXylle $this->log(LogLevel::NOTICE, $message, $context); 99*d10b5556SXylle } 100*d10b5556SXylle 101*d10b5556SXylle /** 102*d10b5556SXylle * Interesting events. 103*d10b5556SXylle * 104*d10b5556SXylle * Example: User logs in, SQL logs. 105*d10b5556SXylle * 106*d10b5556SXylle * @param string $message 107*d10b5556SXylle * @param mixed[] $context 108*d10b5556SXylle * 109*d10b5556SXylle * @return void 110*d10b5556SXylle */ 111*d10b5556SXylle public function info($message, array $context = array()) 112*d10b5556SXylle { 113*d10b5556SXylle $this->log(LogLevel::INFO, $message, $context); 114*d10b5556SXylle } 115*d10b5556SXylle 116*d10b5556SXylle /** 117*d10b5556SXylle * Detailed debug information. 118*d10b5556SXylle * 119*d10b5556SXylle * @param string $message 120*d10b5556SXylle * @param mixed[] $context 121*d10b5556SXylle * 122*d10b5556SXylle * @return void 123*d10b5556SXylle */ 124*d10b5556SXylle public function debug($message, array $context = array()) 125*d10b5556SXylle { 126*d10b5556SXylle $this->log(LogLevel::DEBUG, $message, $context); 127*d10b5556SXylle } 128*d10b5556SXylle} 129