本文介绍日志服务支持的 URL 函数语法及常见场景的 URL 函数示例。
注意
日志服务产品架构升级,支持更丰富的检索分析功能。
- 如果控制台提示新一代架构正式发布信息,表示您使用的是 2.0 架构,可参考检索分析(2.0 架构)中的检索概述等文档使用相关功能。
- 如果控制台未提示新一代架构正式发布信息,表示您使用的是 1.0 架构,可参考本文档使用相关功能。
关于 1.0 架构与 2.0 架构的具体说明,请参考日志服务架构升级通知。
语法说明
日志服务查询分析功能通过 URL 函数支持 HTTP URL 路径中的字段提取、编码解码等分析操作。
说明
URL 的标准格式如下:
[protocol:][//host[:port]][path][?query][#fragment]
日志服务支持的 URL 函数如下:
函数名 | 函数语法 | 含义 |
---|
url_encode | url_encode(KEY)
| 对指定 URL 进行转义编码,例如空格会被转义为加号(+)。 |
url_decode | url_decode(KEY)
| 对指定 URL 进行解码。 |
url_extract_parameter | url_extract_parameter(KEY, parameter)
| 从指定 URL 的 Query 部分中提取指定参数的值。返回值类型为 VARCHAR 类型。 |
url_extract_query | url_extract_query(KEY)
| 从 URL 中提取完整的 Query 部分。返回值类型为 VARCHAR 类型。 |
url_extract_path | url_extract_path(KEY)
| 从 URL 中提取访问路径(path)部分。返回值为 VARCHAR 类型。 |
其中:
- KEY 表示具体的 HTTP URL 地址。
- parameter 表示 URL 中 Query 部分的参数名称;不区分大小写,统一使用小写参数名称
说明
通过 URL 函数提取字段时,提取出的字段中不包含 URL 分割符 :
或 ?
。
示例
函数 | 说明 | 示例 |
---|
url_encode | 对 url 字段的值进行编码。 | - 查询分析语句:
* | select url_encode(url)
- 字段样例:
url:https://www.baidu.com/s?wd=go+error+wrap
%E4%BD%BF%E7%94%A8&tn=84053098_3_dg&ie=utf-8
- 查询和分析结果:
https%3A%2F%2Fwww.baidu.com%2Fs%3Fwd%3Dgo%2Berror%2Bwrap%25
E4%25BD%25BF%25E7%2594%25A8%26tn%3D84053098_3_dg%26ie%3Dutf-8
|
url_decode | 对编码的 URL 字段进行解码。 | - 查询分析语句:
* | select url_decode(url)
- 字段样例:
url:https%3A%2F%2Fwww.baidu.com%2Fs%3Fwd%3Dgo%2Berror%2Bwrap%25
E4%25BD%25BF%25E7%2594%25A8%26tn%3D84053098_3_dg%26ie%3Dutf-8
- 查询和分析结果:
https://www.baidu.com/s?wd=go+error+wrap
%E4%BD%BF%E7%94%A8&tn=84053098_3_dg&ie=utf-8
|
url_extract_parameter | 从 URL 的查询部分中提取指定参数的值。 | - 查询分析语句:
* | select url_extract_parameter(url, 'wd')
- 字段样例:
url:https://www.baidu.com/s?wd=go+error+wrap
%E4%BD%BF%E7%94%A8&tn=84053098_3_dg&ie=utf-8
- 查询和分析结果:
go+error+wrap%E4%BD%BF%E7%94%A8
|
url_extract_query | 从 URL 中提取查询部分的信息。 | - 查询分析语句:
* | select url_extract_query(url)
- 字段样例:
url:https://www.baidu.com/s?wd=go+error+
wrap%E4%BD%BF%E7%94%A8&tn=84053098_3_dg&ie=utf-8
- 查询和分析结果:
wd=go+error+wrap%E4%BD%BF%E7%94%A8&tn=84053098_3_dg&ie=utf-8
|
url_extract_path | 从 URL 中提取访问路径信息。 | |