上云无忧 > 文档中心 > 百度智能云日志服务BLS - 检索语法
日志服务BLS
百度智能云日志服务BLS - 检索语法

文档简介:
检索方式: 开启全文检索或者为字段配置索引之后,可以进行全文检索,或指定字段名称和字段内容进行检索。 检索语法关键字是 match,检索语句写在 match 关键字之后,和 match 关键字之间通过空格分隔。形如: match 检索语句。
*此产品及展示信息均由百度智能云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

检索方式

开启全文检索或者为字段配置索引之后,可以进行全文检索,或指定字段名称和字段内容进行检索。

检索语法关键字是 match,检索语句写在 match 关键字之后,和 match 关键字之间通过空格分隔。形如: match 检索语句

支持的查询类型:

  • 数值查询:指定字段和查询条件,所指定字段符合条件的日志会作为结果返回。例如 match status=200 and time_cost in [100 200) 表示查询 status 等于 200 且 time_cost 大于等于 100 且 time_cost 小于 200 的日志。
  • 关键字查询:指定字段和关键字,所指定字段包含该关键字的日志会作为结果返回。如果不指定字段,将对日志原文进行查询。如果需要查询的关键字中包含检索语法运算符或空格,可以将关键字用双引号("")包裹,表示将双引号中的内容作为多个关键字查询。例如 match method:GET and msg:"service not avaliable" 表示查询 method 是 GET 并且 msg 包含关键字 service、not 和 avaliable 的日志,等价于查询 match method:GET and msg:service and msg:"not" and msg:avaliable。
  • 短语查询:如果需要查询特定的关键字组合,可以将关键字用单引号('')包裹作为短语,表示按照单引号中的关键字顺序进行匹配查询。如果不指定字段,将对日志原文进行查询。例如 match msg:'service not avaliable' 表示查询 msg 包含短语 service not avaliable 的日志,且组成短语的关键字之前不包括其他关键字, service is temporarily not avaliable 和 not service avaliable 都不会命中查询。
  • 模糊查询:在关键字中的中间或末尾加上模糊查询关键字,即 * 和 ?,日志服务会在所有日志中为您查询符合条件的日志。例如 match http_user_agent:andr? 表示在所有日志中查找 http_user_agent 字段包含以 andr 开头的词的日志。

    限制说明:

    • 查询时必须指定前缀,即 * 和 ? 不能出现在词的开头。
    • 指定的词越精确,查询结果越精确。

字段对应的查询类型

  • 对于 text 类型的字段,可以进行普通查询、短语查询、模糊查询。
  • 对于 float 和 long 类型的字段,可以指定数值范围进行查询。

例如,查询语句为 match method:GET and status >= 500,表示查询 method 字段值是 GET,且 status 字段值大于等于 500 的日志。

运算符


运算符 说明
and 双目运算符。格式为 query1 and query2,表示 query1 和 query2 查询结果的交集。如果多个单词间没有语法关键词,默认是 and 的关系。
or 双目运算符。格式为 query1 or query2,表示 query1 和 query2 查询结果的并集。
not 双目运算符。格式为 query1 not query2,那么表示符合 query1 但不符合 query2 的结果,即 query1 - query2。如果省略 query1 ,只有 not query2 ,表示从全部日志中选取不包含 query2 的结果。
(,) 括号用于把一个或多个子查询合并成一个查询条件,用于提高括号内查询条件的优先级。
: 用于 key-value 对的查询。key:term 构成一个 key-value 对。表示在 key 的索引上执行 term 查询。如果 key 或者 value 内有空格( )、冒号(:)等保留字符,需要用双引号 "" 把整个 key 或者 value 包裹起来。左右引号内部的任何一个 term 都会被查询,而不会当成语法关键词。
* 模糊查询关键字,用于替代 0 个或多个字符,例如:andr*,会返回 andr 开头的所有命中词。
? 模糊查询关键字,用于替代一个字符,例如 andr?id,会返回以 andr 开头,以 id 结尾,并且中间还有一个字符的所有命中的词。
" 转义符号,表示把一个关键词转换成普通的查询字符。左右引号内部的任何一个 term 都会被查询,而不会当成语法关键词。引号内的模糊查询关键字 (*,?) 会被当做字符常量处理。
' 转义符号,表示关键字短语。左右引号内部的内容会被当做一个关键字短语进行短语查询。引号内的模糊查询关键字 (*,?) 会被当做字符常量处理。
\ 转义符。用于转义引号,转义后的引号表示符号本身,不会当成转义字符,例如 "\""。
> 查询某个字段下大于某个数值的日志,例如 status > 500。
>= 查询某个字段下大于或等于某个数值的日志,例如 status >= 500。
< 查询某个字段下小于某个数值的日志,例如 status < 400。
<= 查询某个字段下小于或等于某个数值的日志,例如 status <= 400。
= 查询某个字段下等于某个数值的日志,例如 status = 404。
in 查询某个字段处于某个范围内的日志,使用中括号表示闭区间,使用小括号表示开区间,括号中间使用两个数字,数字中间为若干个空格。例如 status in [500 600] 或 status in [200 400)。
is null 查询某个字段值为空或不包含该字段的日志。例如 error is null。
is not null 查询某个字段值不为空的日志。例如 error is not null。
is true 查询某个布尔类型的字段值为 true 的日志,例如 success is true。
is false 查询某个布尔类型的字段值为 false 的日志,例如 success is false。
is not true 查询某个布尔类型字段值不为 true 的日志。需要注意,若字段内容为空或日志中没有该字段,则默认字段值为null,满足字段值不为 true 的条件。例如 success is not true。如果需要查询有 success 字段,且值不为 true 的日志,可以使用 success is not null and success is not true 进行查询。
is not false 查询某个布尔类型字段值不为 false 的日志。需要注意,若字段内容为空或日志中没有该字段,则默认字段值为null,满足字段值不为 false 的条件。例如 success is not false。
| 管道运算符,用于分隔检索语法和 SQL 语法,表示在检索的基础上进行更多计算,例如 match query1 | select count(*)。
相似文档
  • 日志集: 日志集是日志数据的存储单元。用户可以使用采集器Agent或者API方式把日志数据写入到指定的日志集中。 登录百度智能云官网,点击右上角的“管理控制台”,快速进入控制台界面。
  • 概述: 日志服务BLS提供日志投递的功能,可以概括为将日志集中内容以用户指定的格式转储到云上其他存储服务中的过程,进一步满足后续的数据复杂处理、分析以及归档存储的需求。仅需在日志服务控制台进行简单配置,即可完成数据投递。
  • 任务信息: 在日志服务页面中点击“投递任务”,进入“投递任务列表”页面,点击“创建投递任务”,进入创建投递任务页面,填写配置信息。 在"任务信息“中,请输入任务名称。
  • 查看投递任务详情: 投递任务创建成功后,在“产品服务>数据分析>日志服务-投递任务列表”页面。 默认显示所有的投递任务名称、任务ID、日志集、状态和创建时间、异常信息等;可选择“状态”对应的“运行中”、“异常”、“已暂停”筛选不同状态下的投递任务。
  • 多用户访问控制产品介绍: 多用户访问控制(Identity and Access Management, IAM),主要用于百度智能云的身份管理和访问控制,解决云账户的集中授权与管理、资源分享与多用户协同工作等问题。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部