简介:日志服务(Log Service,简称 SLS) 是阿里云提供的行业领先的日志大数据解决方案,一站式提供数据收集、清洗、分析、可视化、告警等功能。智能查询分析是数据中台重要的一环,SLS支持秒级查询10亿到千亿级别的日志数据,为万级开发者提供每日百亿级的查询服务。SLS查询语句是日志服务的专有语法,为了帮助用户简单、快速地构建查询语句,降低用户的学习成本,SLS推出了查询辅助输入(Query Builder)功能,让用户无需关注语法细节也可完成查询。
背景
日志服务(SLS)
日志服务(Log Service,简称 SLS) 是阿里云提供的行业领先的日志大数据解决方案,一站式提供数据收集、清洗、分析、可视化、告警等功能,全面提升海量日志处理能力,实时挖掘数据价值,智能助力研发/运维/运营/安全等场景。
智能查询分析是数据中台重要的一环,SLS支持秒级查询10亿到千亿级别的日志数据,为万级开发者提供每日百亿级的查询服务。SLS非常适合于做监控报表/告警/运营探索式交互分析,更可以通过API调用集成数据分析能力,集成到第三方的可视化平台,BI工具,或自研程序。
SLS查询分析
SLS的日志查询分为两部分:查询语句和分析语句。查询语句和分析语句以竖线(|)分割,查询语句的语法为日志服务专有语法,分析语句采用标准的SQL92语法。
查询语句|分析语句
其中,查询语句可单独使用,分析语句必须与查询语句一起使用。即分析功能是基于查询结果或全量数据进行的。
示例:
//仅查询status>200//仅统计*|SELECTstatus,count(*)ASPVGROUPBYstatus//查询+统计status>200|SELECTstatus,count(*)ASPVGROUPBYstatus
Query Builder介绍
SLS查询语句是日志服务的专有语法,为了帮助用户简单、快速地构建查询语句,降低用户的学习成本,SLS推出了查询辅助输入(Query Builder)功能,让用户无需关注语法细节也可完成查询。
(注:当前版本只支持查询语句,SQL分析语句的辅助输入功能SQL Builder将在后续版本推出,敬请期待)
1. 功能入口
登录日志服务控制台,在Project列表区域,点击进入目标Project。在日志存储 > 日志库页签中,点击进入目标Logstore,在查询和分析语句输入框中,点击右侧图标,唤起Query Builder面板。随后在配置查询条件面板中,配置查询条件即可。
2. 使用模式
简洁模式
简洁模式中的多个查询条件是平铺展示的,各个查询条件之间为同级关系。
高级模式
高级模式中的多个查询条件是换行展示的,各个查询条件之间可设置层级关系,即对应于查询语句中的括号运算符。用户可以通过点击且、或两侧的<图标或>图标,定义各个查询条件之间的层级关系。
双向同步
为了最大程度的保证用户使用的灵活性,Query Builder的查询条件与用户手动输入的查询语句是实时双向同步的。用户既可以通过Query Builder生成查询语句,也可以在查询框中修改生成的查询语句。Query Builder会实时解析用户手动输入的查询语句并同步到面板上。
3. 功能概述
3.1 查询类型
全文查询和字段查询
精确查询和模糊查询
3.2 逻辑连接符
示例
3.3 运算符
Query Builder功能支持如下运算符。更多信息,请参见运算符。
针对全文查询,提供包含、不包含运算符。
针对text类型的字段,提供包含、不包含、(字段)存在、(字段)不存在运算符。
针对long类型或double类型的字段,提供=、!=、>、<、>=、<=、(字段)存在、(字段)不存在运算符。
4. 使用示例
示例1
查询包含GET、PUT、POST中任意值的日志
查询同时包含GET、PUT、POST中的日志
示例2
查询user_agent字段的值中包含Chrome的日志
查询slbid字段的值以slb-开头且client_ip字段的值是在127.0.0.x范围内的日志
示例3
查询请求时间小于1秒的成功请求的日志中包含SLS字符串的日志
常见问题
简洁模式和高级模式有什么区别?
简洁模式中的多个查询条件是平铺展示的,各个查询条件之间为同级关系。
高级模式中的多个查询条件是换行展示的,各个查询条件之间可设置层级关系,即对应于查询语句中的括号运算符。
是否支持构建SQL分析语句?
目前,Query Builder功能只支持构建查询语句,不支持构建SQL分析语句。我们将在后续版本推出针对SQL分析语句的构建能力,敬请期待后续版本。
如果您在输入框中输入了SQL分析语句,Query Builder面板将消失且面板唤起按钮被禁用。删除SQL分析语句部分后,可重新打开Query Builder面板。
更多Query Builder使用过程中的问题参考常见问题。
写在最后
SLS Query Builder可以帮助用户简单、快速地构建查询语句,让用户无需关注语法细节也可完成查询。正如前面提到,SLS的查询分析能力由查询语句和分析语句两部分构成,分析语句能够在秒级查询的基础上进行实时统计分析,适合于做监控报表/告警/运营探索式交互分析,更可以通过API调用集成数据分析能力,集成到第三方的可视化平台,BI工具,或自研程序。
相较于查询语句,分析语句具有更强大的能力和更丰富的应用场景。SLS分析语句采用标准的SQL92语法,相较于查询语法,使用门槛和学习成本更高,因此我们也将在不久的将来推出针对SQL分析语句的辅助输入工具SQL Builder,敬请期待!