368
微信
上下文查询__logsearch_用户指南_日志服务-阿里云
当你展开一份日志文件,每一条日志都记录一个事件,并且往往不是孤立存在的,连续的若干条日志可以回放整个事件序列的发生过程。
日志上下文查询是指定日志来源(机器 + 文件)和其中一条日志,将该日志在原始文件中的前若干条(上文)或后若干条日志(下文)也查找出来,尤其是在DevOps场景下对于理清问题来龙去脉来说可谓是一把利器。
一个应用场景
例如,O2O外卖网站在服务器上的程序日志里会记录一次订单成交的轨迹:
用户登录 -> 浏览商品 -> 点击物品 -> 加入购物车 -> 下单 -> 订单支付 -> 支付扣款 -> 生成订单
如果用户下单失败了,运营、客服的同事如何快速定位问题原因呢?
传统的上下文查询怎么做?
管理员为相关人员添加机器登录权限,然后调查者依次登录应用所部署的每一台机器,以订单ID为关键词搜索应用程序日志文件:
grep a0cad0faa8e2d2540f84023c97c77f37 -C 10 /home/admin/logs/app_worker/app.log*
这条命令会返回订单失败前后各10条日志,帮助判断下单失败的原因。
日志服务上下文查询
使用日志服务怎么做?
- 到服务器上安装日志采集客户端Logtail,并到控制台上添加机器组、日志采集配置,然后Logtail开始上传增量日志
- 到日志服务供控制台日志查询页面,指定时间段根据订单ID找到订单失败日志
- 以查到的错误日志为基准,向上翻页直到发现与之相关的其它日志信息(例如:信用卡扣款失败)
对比传统方案的优势
- 不侵入应用程序,日志文件格式无需改动
- 在日志服务控制台上可以查看任意机器、文件的指定日志上下文信息,解放了过去需要登录每台机器查看日志文件的痛苦
- 结合事件发生的时间线索,在日志服务控制台指定时间段快速定位可疑日志后再进行上下文查询,往往可以事半功倍
- 不用担心服务器存储空间不足或日志文件轮转(rotate)造成的数据丢失,到日志服务控制台上随时可以查看过往的数据
使用上下文查询的两个前提
- 使用Logtail采集日志上传数据到日志库,除创建机器组、采集配置以外无需其它配置
- 开通日志索引查询功能
想了解如何查询日志上下文,请参考控制台上下文查询介绍。
最后更新:2016-12-12 14:46:48
上一篇:
查询方案(ELK/Hive)对比__logsearch_用户指南_日志服务-阿里云
下一篇:
使用Logtail采集日志__logtail(Agent)_用户指南_日志服务-阿里云
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云