赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 日志服务
  4. 操作指南
  5. 查询与分析
  6. 查询与分析常见问题
  7. 如何模糊查询日志?

如何模糊查询日志?

  • 查询与分析常见问题
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

本文介绍不同方式的模糊查询。

通过查询语法进行模糊查询

查询原理

  1. 日志服务查询与模糊匹配条件一致的前100个词。

  2. 使用这前100个词去匹配日志记录中的内容,并返回包含这些词的日志条目。

因为只查询模糊条件命中的前100个词,所以当模糊条件前缀很短且日志中超过100个词时,查询结果会不精确。如果再结合not语句,会发现某些查询条件未被过滤。例如执行not abcd*查询语句,在结果中出现以abcd开头的词。

用法

在日志服务查询语法中,星号(*)代表多个任意字符的词,问号(?)代表单个字符的词。例如:abc*代表查询以abc开头的词。ab?d代表查询以ab开头、d结尾且中间包含单个字符的词, 详情请参见查询语法。

通过SQL的like语法进行精确的模糊查询

like语法满足标准的SQL like语法,在like语法中百分号(%)代表任意个字符。下划线 (_)代表单个字符。

示例:查询key满足abcd开头的所有日志,对应的查询分析语句如下所示。

* | select * from log where key like 'abcd%'

查询key不是以abcd开头的所有日志

* | select * from log where key not like 'abcd%'

通过SQL的正则式函数进行模糊查询

通过正则式函数,可以在一个正则式中查询多个词。并且正则式的表达语义比like语法更强大,可以搜索满足数字的词以及满足特定字符的词等,详情请参见正则式函数。

示例:

  • * | select * from log where regexp_like(key, abc*) 表示查询以abc开头的词。

  • * | select * from log where regexp_like(key, abc\d+) 表示查询以abc开头且后面跟着数字的词。

  • * | select * from log where regexp_like(key, abc[xyz])表示查询以abc开头且后面跟着xyz中的某个字符的词。

相关文章

查询与分析日志的常见报错 2025-04-22 10:56

本文介绍查询与分析日志的常见报错及对应的解决方法。 日志服务控制台查询分析后报错 如果是查询分析语句相关的问题可以借助Copilot智能辅助工具帮助排查,也可以使用SQL优化进行分析,具体请参考Copilot:AI辅助SQ

控制台提示“查询结果不精确”,如何解决? 2025-04-22 10:56

在您查询和分析日志时,如果日志服务控制台提示查询结果不精确,可参考本文进行排查。

日志消费与查询区别 2025-04-22 10:56

日志服务提供日志消费和查询功能,都均为对日志数据的读操作。 日志消费 全量数据顺序(FIFO)读写,提供类似Kafka的功能。<

如何模糊查询日志? 2025-04-22 10:55

本文介绍不同方式的模糊查询。 通过查询语法进行模糊查询 查询原理

如何精确查询日志? 2025-04-22 10:55

当您需要精确查询包含多个关键字的日志时,您可以使用like语法或短语查询。 日志样例

如何在查询和分析语句中使用引号? 2025-04-22 10:55

使用查询分析语句查询日志时,在一些情况下需要添加引号,例如字段名、表名等专有名词中存在空格。本文介绍如何在查询分析语句中使用引号。 在查询语句中使用引号 说明 当字段名或字段值中存在特殊字符(空格、中文等)、语法关键词(and、or等)等内容时,需要使用双引号("")包裹。

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号