annotate vendor/psr/log/Psr/Log/LoggerTrait.php @ 19:fa3358dc1485 tip

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