【阿里云产品公测】使用SLS在云端快速精确定位应用错误-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

【阿里云产品公测】使用SLS在云端快速精确定位应用错误

何韩 2014-07-04 16:43:24 12889
作为一个程序猿,调查应用错误可真不是一个轻松活,一出问题,经常要上机器查看各种日志,对于复杂应用,这个过程就更痛苦。比如,应用前端架设Apache 服务,后端是各种核心逻辑,使用Mysql 做信息存储,这些角色还部署在多台机器上。调查问题,免不了打开多个机器的登录窗口,在不同目录间切换,grep 日志关键词查找线索,再切换再查找,几圈下来,头已经有点晕,打开日志文件看看细节,一失手,vim 一个上百MB 文件… 心中已是各种马在奔腾…
自从用上了阿里云的简单日志服务,突然发现调查问题变得轻松起来。向各位看官汇报一下,如何在云端,快速定位应用各种错误。
首先,先来看前端机器是否有错误,自从将前端访问日志收集放到SLS 上后,再不用一台台登录前端机。选择Apache 访问日志的Category ,直接在控制台输入“500” ,就可查看http 状态为500 的错误日志。真有几次这样的错误,这些访问请求失败了。
[attachment=61829]
赶紧去看看后端应用层,是什么异常导致的,返回category列表,重新选择后端日志”ServerLog”这个Category,输入” ERROR”,把所有ERROR级别的日志全部查出来。
[attachment=61830]
这么多错误,真要好好看看都是怎么回事。想到核心业务部署在10.242.78.62这个机器上,重点关注这个机器上有没有什么错误,输入”ERROR and 10.242.78.62”进行精确定位。
[attachment=61831]
还好,错误数下降了一个数量级。在显示的第一页日志上,看上去都是用户输入参数错误,包含了非utf-8字符。往后翻了几页,也是同样的错误,那先把这些参数错误过滤掉再说,输入 “ERROR and 10.242.78.62 not UTF-8” 进行过滤。
[attachment=61832]
世界立马清净了,只有几个错误,原来都是写数据库出现错误,仔细回想一下,原来前2 天修改了数据库表的schema ,应用程序处还有一个地方忘记修改,由于这个表平时访问少,这个问题一直没有被发现。快速定位到原因后,这个bug 的修复分分钟就搞定。
有了简单日志服务,调查问题,可以直接在云端完成,免去了登录机器的烦恼,通过简单日志服务提供的自定义时间段,以及关键词 AND 、NOT 、OR 的组合查,可以方便地定位各种异常信息,大大提高了本码农的debug 的效率。


原文地址: http://bbs.aliyun.com/read/162988.html
微博互动地址:http://weibo.com/1644971875/BbYxe4oUf?mod=weibotime#_rnd1412683821194 (需将URL复制至浏览器中打开)



存储 监控 前端开发 关系型数据库 MySQL 程序员 Apache 数据库 开发工具
分享到
取消 提交回答
全部回答(8)
  • 村里一把手
    2014-11-13 17:52:41
    写的不错,日志是检查错误的好帮手啊
    0 0
  • 中国宝通宝
    2014-11-13 00:53:16
    Re【阿里云产品公测】使用SLS在云端快速精确定位应用错误
    很不错的东西。我要加速备案、。呵呵
    0 0
  • xiahaitao120
    2014-10-10 19:37:47
    Re【阿里云产品公测】使用SLS在云端快速精确定位应用错误
    不错啊 顶一个
    0 0
  • soyousome
    2014-10-10 00:55:20
    Re【阿里云产品公测】使用SLS在云端快速精确定位应用错误
    谢谢技术分享,正在申请公测中...
    0 0
  • aer
    2014-10-09 22:23:25
    Re【阿里云产品公测】使用SLS在云端快速精确定位应用错误
    不错啊 顶一个
    0 0
滑动查看更多
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程