本文介绍日志服务支持的 URL 函数语法及常见场景的使用示例。
说明
在日志服务分析语句(SQL 语句)中,需要使用单引号('')包裹代表字符串的字符,无符号包裹或被双引号("")包裹的字符为字段名或列名。例如'time'
代表字符串,time
或 "time"
代表字段名或列名。
函数名称 | 函数语法 | 说明 |
---|---|---|
URL_ENCODE(KEY) | 对 URL 进行编码。 | |
URL_DECODE(KEY) | 对 URL 进行解码。 | |
URL_EXTRACT_FRAGMENT(KEY) | 从 URL 中提取 Fragment 信息。 | |
URL_EXTRACT_HOST(KEY) | 从 URL 中提取 Host 信息。 | |
URL_EXTRACT_PARAMETER(KEY, parameter ** name) | 从 URL 的 Query 部分提取指定参数的值。 | |
URL_EXTRACT_PATH(KEY) | 从 URL 中提取访问路径信息。 | |
URL_EXTRACT_PORT(KEY) | 从 URL 中提取端口信息。 | |
URL_EXTRACT_PROTOCOL(KEY) | 从 URL 中提取协议信息。 | |
URL_EXTRACT_QUERY(KEY) | 从 URL 中提取完整的 Query 部分。 |
URL_ENCODE 函数用于对 URL 进行编码。
语法格式
URL_ENCODE(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
对 test_url_text
字段的值进行编码。
日志样例
检索和分析语句
* | SELECT URL_ENCODE(test_url_text)
检索和分析结果
URL_DECODE 函数对 URL 进行解码。
语法格式
URL_DECODE(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为编码过的 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
对 test_url_text
字段的值进行解码。
日志样例
检索和分析语句
* | SELECT URL_DECODE(test_url_text)
检索和分析结果
URL_EXTRACT_FRAGMENT 函数用于从 URL 中提取 Fragment 信息。
语法格式
URL_EXTRACT_FRAGMENT(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
从 test_url_text
字段值中提取 Fragment 信息。
日志样例
检索和分析语句
* | SELECT URL_EXTRACT_FRAGMENT(test_url_text)
检索和分析结果
URL_EXTRACT_HOST 函数用于从 URL 地址中提取 Host 信息。
语法格式
URL_ENCODE_HOST(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
从 test_url_text
字段中提取 Host 信息。
日志样例
检索和分析语句
* | SELECT URL_EXTRACT_HOST(test_url_text)
检索和分析结果
URL_EXTRACT_PARAMETER 函数用于从 URL 的 Query 部分提取指定参数的值。
语法格式
URL_EXTRACT_PARAMETER(KEY, parameter name)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
parameter name | URL 的 Query 部分中的参数名称。 |
返回值说明
返回值为 Varchar 类型。
场景
从 url
字段值中提取 region
参数的值。
日志样例
检索和分析语句
* | SELECT URL_EXTRACT_PARAMETER(url,'region') AS region
检索和分析结果
URL_EXTRACT_PATH 函数用于从 URL 中提取访问路径信息。
语法格式
URL_EXTRACT_PATH(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
从 url
字段值中提取访问路径信息。
日志样例
检索和分析语句
* | SELECT URL_EXTRACT_PATH(url) AS path
检索和分析结果
URL_EXTRACT_PORT 函数用于从 URL 中提取端口信息。
语法格式
URL_EXTRACT_PORT(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
从 url
字段值中提取端口信息。
日志样例
url:http://localhost:8080
检索和分析语句
* | SELECT URL_EXTRACT_PORT(url) AS port
检索和分析结果
URL_EXTRACT_PROTOCOL 函数用于从 URL 中提取协议信息。
语法格式
URL_EXTRACT_PROTOCOL(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
从 url
字段值中提取协议信息。
日志样例
url:http://localhost:8080
检索和分析语句
* | SELECT URL_EXTRACT_PROTOCOL(url) AS protocol
检索和分析结果
URL_EXTRACT_QUERY 函数用于从 URL 中提取完整的 Query 部分。
语法格式
URL_EXTRACT_QUERY(KEY)
参数说明
参数 | 说明 |
---|---|
KEY | 字段、表达式,其值为 URL 地址。 |
返回值说明
返回值为 Varchar 类型。
场景
从 url
字段值中提取查询部分的信息。
日志样例
url:http://localhost:8080/query?name=regan
检索和分析语句
* | SELECT URL_EXTRACT_QUERY(url) AS query
检索和分析结果