全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
日志服务

上下文查询

更新时间:2018-04-24 09:42:48

当您展开一份日志文件,每一条日志都记录一个事件,并且往往不是孤立存在的,连续的若干条日志可以回放整个事件序列的发生过程。

日志上下文查询是指定日志来源(机器 + 文件)和其中一条日志,将该日志在原始文件中的前若干条(上文)或后若干条日志(下文)也查找出来,尤其是在 DevOps 场景下对于理清问题来龙去脉来说可谓是一把利器。

日志服务控制台提供专门的查询页面,您可以在控制台查看指定日志在原始文件中的上下文信息,体验类似于在原始日志文件中向上或向下翻页功能。通过查看指定日志的上下文信息,您可以在业务故障排查中快速查找相关故障信息,方便定位问题。

应用场景

例如,O2O 外卖网站在服务器上的程序日志里会记录一次订单成交的轨迹:

用户登录 > 浏览商品 > 点击物品 > 加入购物车 > 下单 > 订单支付 > 支付扣款 > 生成订单

如果用户下单失败了,运维人员需要快速定位问题原因。传统的上下文查询中,需要管理员相关人员添加机器登录权限,然后调查者依次登录应用所部署的每一台机器,以订单 ID 为关键词搜索应用程序日志文件,帮助判断下单失败原因。

在日志服务中,可以按照以下步骤排查:

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

功能优势

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

前提条件

  • 使用 Logtail 采集日志 上传数据到日志库,除创建机器组、采集配置以外无需其它配置。或使用Producer相关的SDK上传,例如 Producer Library、Log4J、LogBack、C-Producer Library等。
  • 开通 日志索引查询 功能。

注意:

  • 上下文查询功能暂不支持syslog日志。

操作步骤

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

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

  3. Logstore列表 页面,选择所需的日志库并单击日志索引列下的 查询进入查询界面。

  4. 输入您的查询分析语句,选择查询时段并单击搜索

    查询结果页中任一条日志的左侧有 上下文浏览 链接,表明该日志支持上下文查看功能。

    上下文查询功能入口

  5. 选中一条日志,单击 上下文浏览。在右侧弹出页面中查看目标日志的上下文日志。

    使用鼠标在右侧弹出页面上下滚动,即可查看选中日志周边的日志信息。如需继续查看上文和下文,单击 更早更新 进行翻页浏览。

    上下文

本文导读目录