开发者社区> 问答> 正文

日志上下文这么查询?


当您展开一份日志文件,每一条日志都记录一个事件,并且往往不是孤立存在的,连续的若干条日志可以回放整个事件序列的发生过程。
日志上下文查询是指定日志来源(机器 + 文件)和其中一条日志,将该日志在原始文件中的前若干条(上文)或后若干条日志(下文)也查找出来,尤其是在 DevOps 场景下对于理清问题来龙去脉来说可谓是一把利器。
日志服务控制台提供专门的查询页面,您可以在控制台查看指定日志在原始文件中的上下文信息,体验类似于在原始日志文件中向上或向下翻页功能。通过查看指定日志的上下文信息,您可以在业务故障排查中快速查找相关故障信息,方便定位问题。

应用场景


例如,O2O 外卖网站在服务器上的程序日志里会记录一次订单成交的轨迹:
[backcolor=transparent]用户登录 > [backcolor=transparent]浏览商品 > [backcolor=transparent]点击物品 > [backcolor=transparent]加入购物车 > [backcolor=transparent]下单 > [backcolor=transparent]订单支付 > [backcolor=transparent]支付扣款 > [backcolor=transparent]生成订单
如果用户下单失败了,运维人员需要快速定位问题原因。传统的上下文查询中,需要管理员相关人员添加机器登录权限,然后调查者依次登录应用所部署的每一台机器,以订单 ID 为关键词搜索应用程序日志文件,帮助判断下单失败原因。
在日志服务中,可以按照以下步骤排查:

  1. 到服务器上安装日志采集客户端 Logtail,并到控制台上添加机器组、日志采集配置,然后 Logtail 开始上传增量日志。
  2. 到日志服务供控制台日志查询页面,指定时间段根据订单 ID 找到订单失败日志。
  3. 以查到的错误日志为基准,向上翻页直到发现与之相关的其它日志信息(例如:信用卡扣款失败)。


功能优势

  • 不侵入应用程序,日志文件格式无需改动。
  • 在日志服务控制台上可以查看任意机器、文件的指定日志上下文信息,无需登录每台机器查看日志文件。
  • 结合事件发生的时间线索,在日志服务控制台指定时间段快速定位可疑日志后再进行上下文查询,往往可以事半功倍。
  • 不用担心服务器存储空间不足或日志文件轮转(rotate)造成的数据丢失,到日志服务控制台上随时可以查看过往的数据。


前提条件


[backcolor=transparent]注意: 上下文查询功能目前仅支持 使用 Logtail 采集日志 上传的数据,且需要开通 日志索引查询 功能。


操作步骤


  1. 登录 日志服务管理控制台

  2. 选择所需的项目,单击项目名称。

  3. 在 [backcolor=transparent]Logstore列表 页面,选择所需的日志库并单击日志索引列下的 [backcolor=transparent]查询。
    查询结果页中任一条日志的左侧有 [backcolor=transparent]上下文浏览 链接,表明该日志支持上下文查看功能。

  4. 选中一条日志,单击 [backcolor=transparent]上下文浏览。
    控制台从普通搜索模式跳转到上下文查询模式。

  5. 使用鼠标在当前页面上下滚动查看选中日志周边的日志信息。如需要继续查看上文和下文,单击 [backcolor=transparent]更早 或 [backcolor=transparent]更新 进行翻页浏览。

展开
收起
轩墨 2017-10-23 11:25:02 3553 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
PostgresChina2018_赖思超_PostgreSQL10_hash索引的WAL日志修改版final 立即下载
Kubernetes下日志实时采集、存储与计算实践 立即下载
日志数据采集与分析对接 立即下载