]>
Commit | Line | Data |
---|---|---|
889a5f9f AD |
1 | <?php |
2 | class Logger { | |
b367c951 AD |
3 | private static $instance; |
4 | private $adapter; | |
889a5f9f | 5 | |
4e53956a AD |
6 | public static $errornames = array( |
7 | 1 => 'E_ERROR', | |
889a5f9f | 8 | 2 => 'E_WARNING', |
e2261e17 | 9 | 4 => 'E_PARSE', |
889a5f9f | 10 | 8 => 'E_NOTICE', |
e2261e17 AD |
11 | 16 => 'E_CORE_ERROR', |
12 | 32 => 'E_CORE_WARNING', | |
13 | 64 => 'E_COMPILE_ERROR', | |
14 | 128 => 'E_COMPILE_WARNING', | |
889a5f9f AD |
15 | 256 => 'E_USER_ERROR', |
16 | 512 => 'E_USER_WARNING', | |
17 | 1024 => 'E_USER_NOTICE', | |
18 | 2048 => 'E_STRICT', | |
19 | 4096 => 'E_RECOVERABLE_ERROR', | |
20 | 8192 => 'E_DEPRECATED', | |
21 | 16384 => 'E_USER_DEPRECATED', | |
22 | 32767 => 'E_ALL'); | |
23 | ||
24 | function log_error($errno, $errstr, $file, $line, $context) { | |
b367c951 AD |
25 | if ($errno == E_NOTICE) return false; |
26 | ||
27 | if ($this->adapter) | |
28 | return $this->adapter->log_error($errno, $errstr, $file, $line, $context); | |
29 | else | |
30 | return false; | |
889a5f9f AD |
31 | } |
32 | ||
33 | function log($string) { | |
b367c951 AD |
34 | if ($this->adapter) |
35 | return $this->adapter->log($string); | |
36 | else | |
37 | return false; | |
38 | } | |
39 | ||
40 | private function __clone() { | |
41 | // | |
42 | } | |
43 | ||
44 | function __construct() { | |
45 | switch (LOG_DESTINATION) { | |
46 | case "sql": | |
47 | $this->adapter = new Logger_SQL(); | |
48 | break; | |
49 | case "syslog": | |
50 | $this->adapter = new Logger_Syslog(); | |
51 | break; | |
52 | default: | |
53 | $this->adapter = false; | |
54 | } | |
889a5f9f | 55 | } |
b367c951 AD |
56 | |
57 | public static function get() { | |
58 | if (self::$instance == null) | |
59 | self::$instance = new self(); | |
60 | ||
61 | return self::$instance; | |
62 | } | |
63 | ||
889a5f9f AD |
64 | } |
65 | ?> |