php错误日志查看最后10行,如何将php的错误「行数」或完整的错误信息 写进档案...

用Exception对象承载错误,往外抛

最外层用try catch或set_exception_handler捕获,输出友好错误的同时记录Exception的信息(包含完整的callstack,里面有所有的参数,可能很大需要精简)

error可以通过转换为ErrorException走一样的处理

打比方我厂通过mongodb来记录日志,这是某天的某个错误

"54d1d4e39dce4f834949f0e9": {

"_id": {

"$id": "54d1d4e39dce4f834949f0e9"

},

"message": "site.error",

"context": {

"uid": null,

"uri": "\/login\/wechat\/get-userinfo",

"exception": {

"class": "ErrorException",

"message": "Undefined index: openid",

"file": "\/data\/deploy\/site\/20150130-150624\/src\/Controller\/Passport\/Oauth\/WechatOauth.php:102",

"trace": [

"\/data\/deploy\/site\/20150130-150624\/src\/Controller\/Passport\/Oauth\/WechatOauth.php:102",

"{\"function\":\"getUserInfo\",\"class\":\"XXXX\\\\Site\\\\Controller\\\\Passport\\\\Oauth\\\\WechatOauth\",\"type\":\"::\",\"args\":[]}",

"\/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Route.php:462",

"\/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Slim.php:1326",

"\/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Middleware\/Flash.php:85",

"\/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Middleware\/MethodOverride.php:92",

"\/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Slim.php:1271",

"\/data\/deploy\/site\/20150130-150624\/public\/index.php:11"

]

},

"_trace": [

"#0 XXXX\\Log\\Log->log() @ \/data\/deploy\/site\/20150130-150624\/vendor\/psr\/log\/Psr\/Log\/AbstractLogger.php:80",

"#1 Psr\\Log\\AbstractLogger->warning() @ \/data\/deploy\/site\/20150130-150624\/src\/Router.php:194",

"#2 XXXX\\Site\\Router::XXXX\\Site\\{closure}() @ :",

"#3 call_user_func_array() @ \/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Slim.php:656",

"#4 Slim\\Slim->callErrorHandler() @ \/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Slim.php:638",

"#5 Slim\\Slim->error() @ \/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Slim.php:1347",

"#6 Slim\\Slim->call() @ \/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Middleware\/Flash.php:85",

"#7 Slim\\Middleware\\Flash->call() @ \/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Middleware\/MethodOverride.php:92",

"#8 Slim\\Middleware\\MethodOverride->call() @ \/data\/deploy\/site\/20150130-150624\/vendor\/slim\/slim\/Slim\/Slim.php:1271",

"#9 Slim\\Slim->run() @ \/data\/deploy\/site\/20150130-150624\/public\/index.php:11",

"#10 {main}"

]

},

"level": 300,

"level_name": "WARNING",

"channel": "main",

"datetime": {

"sec": 1423037667,

"usec": 0

},

"extra": []

},

微信登陆判断不准确,信任返回结果有openid导致的notice,不看代码都能看出来吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值