Showing
3 changed files
with
36 additions
and
26 deletions
@@ -2,23 +2,27 @@ | @@ -2,23 +2,27 @@ | ||
2 | 2 | ||
3 | namespace WebPlugin; | 3 | namespace WebPlugin; |
4 | 4 | ||
5 | +use WebPlugin\UdpLog; | ||
5 | /** | 6 | /** |
6 | - * 辅助类 | 7 | + * 异常错误日志 |
7 | */ | 8 | */ |
8 | class TriggerError | 9 | class TriggerError |
9 | { | 10 | { |
10 | public static function myErrorHandler($errno, $errstr, $errfile, $errline) | 11 | public static function myErrorHandler($errno, $errstr, $errfile, $errline) |
11 | { | 12 | { |
13 | +// print_r(get_defined_constants());exit; | ||
12 | switch ($errno) { | 14 | switch ($errno) { |
13 | - case \Yaf\ERR\NOTFOUD\CONTROLLER: | ||
14 | - case \Yaf\ERR\NOTFOUD\MODULE: | ||
15 | - case \Yaf\ERR\NOTFOUD\ACTION: | 15 | + case \YAF\ERR\NOTFOUND\CONTROLLER: |
16 | + case \YAF\ERR\NOTFOUND\MODULE: | ||
17 | + case \YAF\ERR\NOTFOUND\ACTION: | ||
16 | header("Not Found"); | 18 | header("Not Found"); |
17 | break; | 19 | break; |
18 | - | ||
19 | default: | 20 | default: |
20 | - echo 'ehre'; | ||
21 | - echo "Unknown error type: [$errno] $errstr<br />\n"; | 21 | + $data['errno'] = $errno; |
22 | + $data['errstr'] = $errstr; | ||
23 | + $data['errfile'] = $errfile; | ||
24 | + $data['errline'] = $errline; | ||
25 | + UdpLog::triggerError('triggerError',$data); | ||
22 | break; | 26 | break; |
23 | } | 27 | } |
24 | return true; | 28 | return true; |
@@ -17,6 +17,8 @@ namespace WebPlugin; | @@ -17,6 +17,8 @@ namespace WebPlugin; | ||
17 | */ | 17 | */ |
18 | class UdpLog | 18 | class UdpLog |
19 | { | 19 | { |
20 | + //日志开关 | ||
21 | + private static $flag = true; | ||
20 | //influxdb url | 22 | //influxdb url |
21 | public static $url = 'influxdb.yohobuy.com'; | 23 | public static $url = 'influxdb.yohobuy.com'; |
22 | //influxdb port | 24 | //influxdb port |
@@ -32,6 +34,15 @@ class UdpLog | @@ -32,6 +34,15 @@ class UdpLog | ||
32 | const RECORD_MODE = 'FILE';//mode: FILE | UDP | 34 | const RECORD_MODE = 'FILE';//mode: FILE | UDP |
33 | 35 | ||
34 | /** | 36 | /** |
37 | + * 初始化 | ||
38 | + */ | ||
39 | + private function __construct() | ||
40 | + { | ||
41 | + if (self::$flag) { | ||
42 | + return; | ||
43 | + } | ||
44 | + } | ||
45 | + /** | ||
35 | * proc line and send log to influxdb | 46 | * proc line and send log to influxdb |
36 | * @param $level | 47 | * @param $level |
37 | * @param $message | 48 | * @param $message |
@@ -158,4 +169,13 @@ class UdpLog | @@ -158,4 +169,13 @@ class UdpLog | ||
158 | public static function debug($message, $meta = '') { | 169 | public static function debug($message, $meta = '') { |
159 | self::procLog(__METHOD__, $message, debug_backtrace(), $meta); | 170 | self::procLog(__METHOD__, $message, debug_backtrace(), $meta); |
160 | } | 171 | } |
172 | + | ||
173 | + /** | ||
174 | + * yaf trigger error | ||
175 | + * @param $message | ||
176 | + * @param mixed $meta | ||
177 | + */ | ||
178 | + public static function triggerError($message, $meta = '') { | ||
179 | + self::procLog(__METHOD__, $message, debug_backtrace(), $meta); | ||
180 | + } | ||
161 | } | 181 | } |
@@ -149,27 +149,13 @@ class Bootstrap extends Bootstrap_Abstract | @@ -149,27 +149,13 @@ class Bootstrap extends Bootstrap_Abstract | ||
149 | //} | 149 | //} |
150 | } | 150 | } |
151 | 151 | ||
152 | + /** | ||
153 | + * triggerError | ||
154 | + * @param Dispatcher $dispatcher | ||
155 | + */ | ||
152 | public function _initError(Dispatcher $dispatcher) | 156 | public function _initError(Dispatcher $dispatcher) |
153 | { | 157 | { |
154 | - $dispatcher->getInstance()->setErrorHandler(array($this,"myErrorHandler")); | ||
155 | -// $dispatcher->getInstance()->setErrorHandler(array("\\WebPlugin\\TriggerError","myErrorHandler")); | ||
156 | - } | ||
157 | - | ||
158 | - public static function myErrorHandler($errno, $errstr, $errfile, $errline) | ||
159 | - { | ||
160 | - switch ($errno) { | ||
161 | - case YAF_ERR_NOTFOUND_CONTROLLER: | ||
162 | - case YAF_ERR_NOTFOUND_MODULE: | ||
163 | - case YAF_ERR_NOTFOUND_ACTION: | ||
164 | - header("Not Found"); | ||
165 | - break; | ||
166 | - | ||
167 | - default: | ||
168 | - echo "Unknown error type: [$errno] $errstr<br />\n"; | ||
169 | - break; | ||
170 | - } | ||
171 | - | ||
172 | - return true; | 158 | + $dispatcher->getInstance()->setErrorHandler(array("\\WebPlugin\\TriggerError","myErrorHandler")); |
173 | } | 159 | } |
174 | // /** | 160 | // /** |
175 | // * 初始化第三方包 | 161 | // * 初始化第三方包 |
-
Please register or login to post a comment