URL函數(shù)
本文介紹URL函數(shù)的基本語法和示例。
日志服務(wù)支持如下URL函數(shù)。
URL格式為
[protocol:][//host[:port]][path][?query][#fragment]
。在日志服務(wù)分析語句中,表示字符串的字符必須使用單引號('')包裹,無符號包裹或被雙引號("")包裹的字符表示字段名或列名。例如:'status'表示字符串status,status或"status"表示日志字段status。
函數(shù)名稱 | 語法 | 說明 | 支持SQL | 支持SPL |
url_encode(x) | 對URL進(jìn)行編碼。 | √ | √ | |
url_decode(x) | 對URL進(jìn)行解碼。 | √ | √ | |
url_extract_fragment(x) | 從URL中提取Fragment信息。 | √ | √ | |
url_extract_host(x) | 從URL中提取Host信息。 | √ | √ | |
url_extract_parameter(x, parameter name) | 從URL的查詢部分中提取指定參數(shù)的值。 | √ | √ | |
url_extract_path(x) | 從URL中提取訪問路徑信息。 | √ | √ | |
url_extract_port(x) | 從URL中提取端口信息。 | √ | √ | |
url_extract_protocol(x) | 從URL中提取協(xié)議信息。 | √ | √ | |
url_extract_query(x) | 從URL中提取查詢部分的信息。 | √ | √ |
url_encode函數(shù)
url_encode函數(shù)用于對URL進(jìn)行編碼。
語法
url_encode(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
返回值類型
varchar類型。
示例
對url字段的值進(jìn)行編碼。
字段樣例
url:https://homenew.console.aliyun.com/home/dashboard/ProductAndService
查詢和分析語句
* | select url_encode(url)
查詢和分析結(jié)果
url_decode函數(shù)
url_decode函數(shù)對URL進(jìn)行解碼。
語法
url_decode(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為編碼過的URL地址。 |
返回值類型
varchar類型。
示例
對url字段值進(jìn)行解碼。
字段樣例
url:http%3A%2F%2Fwww.aliyun.com%3A80%2Fproduct%2Fsls
查詢和分析語句
* | SELECT url_decode(url) AS decode
查詢和分析結(jié)果
url_extract_fragment函數(shù)
url_extract_fragment函數(shù)用于從URL中提取Fragment信息。
語法
url_extract_fragment(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
返回值類型
varchar類型。
示例
從url字段值中提取Fragment信息。
字段樣例
url:https://sls.console.aliyun.com/#/project/dashboard-demo/categoryList
查詢和分析語句
* | SELECT url_extract_fragment(url)
查詢和分析結(jié)果
url_extract_host函數(shù)
url_extract_host函數(shù)用于從URL中提取Host信息。
語法
url_extract_host(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
返回值類型
varchar類型。
示例
從url字段值中提取Host信息。
字段樣例
url:https://homenew.console.aliyun.com/home/dashboard/ProductAndService
查詢和分析語句
* | SELECT url_extract_host(url) AS host
查詢和分析結(jié)果
url_extract_parameter函數(shù)
url_extract_parameter函數(shù)用于從URL的查詢部分中提取指定參數(shù)的值。
語法
url_extract_parameter(x, parameter name)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
parameter name | URL查詢部分中的參數(shù)名稱。 |
返回值類型
varchar類型。
示例
從url字段值中提取accounttraceid參數(shù)的值。
字段樣例
url:https://sls.console.aliyun.com/lognext/project/dashboard-all/logsearch/nginx-demo?accounttraceid=d6241a173f88471c91d3405cda010ff5ghdw
查詢和分析語句
* | SELECT url_extract_parameter(url,'accounttraceid') AS accounttraceid
查詢和分析結(jié)果
url_extract_path函數(shù)
url_extract_path用于從URL中提取訪問路徑信息。
語法
url_extract_path(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
返回值類型
varchar類型。
示例
從url字段值中提取訪問路徑信息。
字段樣例
url:https://sls.console.aliyun.com/lognext/project/dashboard-all/logsearch/nginx-demo?accounttraceid=d6241a173f88471c91d3405cda010ff5ghdw
查詢和分析語句
* | SELECT url_extract_path(url) AS path
查詢和分析結(jié)果
url_extract_port函數(shù)
url_extract_port函數(shù)用于從URL中提取端口信息。
語法
url_extract_port(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
返回值類型
varchar類型。
示例
從url字段值中提取端口信息。
字段樣例
url:http://localhost:8080/lognext/profile
查詢和分析語句
* | SELECT url_extract_port(url) AS port
查詢和分析結(jié)果
url_extract_protocol函數(shù)
url_extract_protocol用于從URL中提取協(xié)議信息。
語法
url_extract_protocol(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
返回值類型
varchar類型。
示例
從url字段值中提取協(xié)議信息。
字段樣例
url:https://homenew.console.aliyun.com/home/dashboard/ProductAndService
查詢和分析語句
* | SELECT url_extract_protocol(url) AS protocol
查詢和分析結(jié)果
url_extract_query函數(shù)
url_extract_query函數(shù)用于從URL中提取查詢部分的信息。
語法
url_extract_query(x)
參數(shù)說明
參數(shù) | 說明 |
x | 參數(shù)值為具體的URL地址。 |
返回值類型
varchar類型。
示例
從url字段值中提取查詢部分的信息。
字段樣例
url:https://sls.console.aliyun.com/lognext/project/dashboard-all/logsearch/nginx-demo?accounttraceid=d6241a173f88471c91d3405cda010ff5ghdw
查詢和分析語句
* | SELECT url_extract_query(url)
查詢和分析結(jié)果