事件配置為原始日志提供可視化、易操作的日志鉆取功能,方便您獲取更詳盡的日志信息,包括預設事件配置和高級事件配置。本文介紹如何在日志服務控制臺為原始日志配置事件。
前提條件
已開啟并配置索引。更多信息,請參見創建索引。
背景信息
鉆取是數據分析中不可缺少的功能之一,通過改變數據維度的層次、變換分析的粒度從而獲取數據中更詳盡的信息。它包括向上鉆?。╮oll up)和向下鉆?。╠rill down)。向下鉆取是在分析時加深維度,更深入的查看數據,挖掘更大的數據價值,及時做出更加正確的決策。日志服務通過預設和高級事件,為您提供原始日志的向下鉆取功能。
預設事件配置
前提條件
該數據為通過logtail采集到的數據,API或者SDK采集到的數據沒有該功能。
操作
通過預設事件,您可以快速使用and和not拼接查詢語句,也可以新建查詢語句。
在表格或原始頁簽中,單擊任意日志字段的值,會彈出預設窗口,提供的操作如下表所述。例如,您查詢和分析框中的語句為* | SELECT status as dim, count(1) as c group by dim
。當您單擊原始日志字段host中的203.0.113.1時,查詢和分析框中的語句變更為如下 :
操作 | 說明 | 操作后結果 |
添加到查詢 | 將您單擊的關鍵詞通過and拼接后添加到查詢和分析框中,并進行查詢。 |
|
從查詢中刪除 | 將您單擊的關鍵詞通過not拼接后添加到查詢和分析框中,并進行查詢。 |
|
新建查詢 | 刪除查詢和分析框中所有語句,按照您單擊的關鍵詞新建查詢語句,并進行查詢。 |
|
高級事件配置
您可以為日志字段添加不同類型的事件,便于深入分析日志。事件行為包括打開日志庫、打開快速查詢、打開儀表盤和自定義HTTP鏈接。
在表格或原始頁簽中,單擊圖標下的事件配置,進入高級事件配置窗口。
每個日志字段支持配置最多10個高級事件。
登錄日志服務控制臺。
在Project列表區域,單擊目標Project。
在控制臺左側,單擊日志存儲,在日志庫列表中單擊目標Logstore。
在原始日志的表格或原始頁簽中,單擊圖標下的事件配置。
在高級事件配置對話框的字段列表中,單擊目標字段對應的添加事件。
在事件配置區域,配置高級事件。
事件行為包括打開日志庫、打開快速查詢、打開儀表盤和自定義HTTP鏈接,具體操作如下所示。
說明如果配置高級事件為打開日志庫,則需提前創建目標日志庫。更多信息,請參見創建Logstore。
如果配置高級事件為打開快速查詢,則需提前創建目標快速查詢。更多信息,請參見快速查詢。
如果要配置變量,則需要在跳轉到的目標快速查詢中配置查詢分析語句的占位符變量。更多信息,請參見設置占位符變量。
如果配置高級事件為打開儀表盤,則需提前創建目標儀表盤。更多信息,請參見創建儀表盤。
如果要配置變量,則在跳轉到的目標儀表盤中需有對應的圖表已占位符變量。更多信息,請參見設置占位符變量。
如果配置高級事件為自定義HTTP鏈接,則需提前準備好HTTP鏈接。
打開日志庫
設置事件為打開日志庫,具體配置如下所示。
參數
說明
配置名稱
配置名稱。
事件行為
選擇打開日志庫。
打開新窗口
開啟該選項,則在觸發高級事件時將在新窗口打開目標日志庫查詢頁面。
時間范圍
設置目標日志庫的查詢時間范圍。可以設置為:
預設:在原始日志頁面中單擊字段值,跳轉到目標日志庫查詢頁面后,保持日志服務的默認查詢時間范圍,即15分鐘(相對)。
繼承當前時間:在原始日志頁面單擊字段值,跳轉到目標日志庫查詢頁面后,對應的查詢時間范圍為查詢原始日志時對應的時間。
相對時間:在原始日志頁面中單擊字段值,跳轉到目標日志庫查詢頁面后,對應的查詢時間范圍為當前指定的相對時間。
整點時間:在原始日志頁面中單擊字段值,跳轉到目標日志庫查詢頁面后,對應的查詢時間范圍為當前指定的整點時間。
請選擇日志庫
選擇目標日志庫。在觸發事件后,將跳轉到該日志庫的查詢頁面。
是否繼承過濾
打開是否繼承過濾開關,將當前查詢已有的過濾條件同步到跳轉后的目標日志庫的查詢頁面中,并以
AND
方式添加到查詢和分析語句之前。過濾
在過濾頁簽中輸入過濾語句,可將該過濾語句同步到跳轉后的目標日志庫的查詢頁面中,并以
AND
方式添加到查詢和分析語句之前。支持在過濾語句中插入可選參數域,將對應字段的值作為過濾條件。例如單擊輸入
${__topic__}
,跳轉后的日志庫的查詢語句中會拼接AND
后查詢。變量
暫不支持配置變量。
打開快速查詢
設置事件為打開快速查詢,具體配置如下所示。
參數
說明
配置名稱
配置名稱。
事件行為
選擇打開快速查詢。
打開新窗口
開啟該選項,則在觸發事件時將在新窗口打開目標快速查詢頁面。
時間范圍
設置目標快速查詢的時間范圍??梢栽O置為:
預設:在原始日志頁面中單擊字段值,跳轉到目標快速查詢的查詢頁面后,保持日志服務的默認查詢時間范圍,即15分鐘(相對)。
繼承當前時間:在原始日志頁面單擊字段值,跳轉到目標快速查詢的查詢頁面后,對應的查詢時間范圍為查詢原始日志時對應的時間。
相對時間:在原始日志頁面中單擊字段值,跳轉到目標快速查詢的查詢頁面后,對應的查詢時間范圍為當前指定的相對時間。
整點時間:在原始日志頁面中單擊字段值,跳轉到目標快速查詢的查詢頁面后,對應的查詢時間范圍為當前指定的整點時間。
請選擇快速查詢
選擇目標快速查詢。在觸發事件后,將跳轉到該快速查詢頁面。
是否繼承過濾
打開是否繼承過濾開關,將當前查詢已有的過濾條件同步到跳轉后的目標快速查詢的查詢頁面中,并以
AND
方式添加到查詢和分析語句之前。過濾
在過濾頁簽中輸入過濾語句,可將該過濾語句同步到跳轉后的目標快速查詢的查詢頁面中,并以
AND
方式添加到查詢和分析語句之前。支持在過濾語句中插入可選參數域,將對應字段的值作為過濾條件。例如單擊輸入
${__topic__}
,跳轉后的快速查詢的查詢語句中會拼接AND
后查詢。變量
日志服務支持通過變量靈活修改目標快速查詢的查詢和分析語句,當此處添加的變量與目標快速查詢的查詢和分析語句中的變量相同時,會將查詢和分析語句中的變量替換為觸發事件的字段值。您可以在變量頁簽中配置變量。
說明如果選擇添加變量,則需要提前在跳轉到的目標快速查詢中配置查詢和分析語句的占位符變量。更多信息,請參見設置占位符變量。
最多可添加5個動態變量和5個靜態變量。
動態變量:以您單擊觸發事件時所在日志對應的字段值作為變量值進行查詢。
動態變量名:配置變量名。例如您已在快速查詢中定義的占位符變量
dynamic_ip
。動態變量值所在列:以指定列對應的值動態替換目標快速查詢的查詢和分析語句中的變量。例如選擇
__source__
。表示以
__source__
的值替換快速查詢中已定義的占位符變量,并進行查詢。
靜態變量:以您定義的固定值作為查詢值進行查詢。
靜態變量名:配置變量名。例如您已在快速查詢中定義的占位符變量
static_ip
。靜態值:以固定的字段值替換目標快速查詢的查詢和分析語句中的變量。例如
203.0.113.1
。表示以
static_ip
的值203.0.113.1
替換快速查詢中已定義的占位符變量,并進行查詢。占位符變量值為203.0.113.1
的日志都會被查詢到。
打開儀表盤
設置事件為打開儀表盤,具體配置如下所示。
參數
說明
配置名稱
配置名稱。
事件行為
選擇打開儀表盤。
打開新窗口
開啟該選項,則在觸發事件時將在新窗口打開目標儀表盤頁面。
時間范圍
設置目標儀表盤的時間范圍。可以設置為:
預設:在原始日志頁面單擊字段值,跳轉到目標儀表盤頁面后,保持日志服務的默認查詢時間范圍,即15分鐘(相對)。
繼承圖表時間:在原始日志頁面單擊字段值,跳轉到目標儀表盤頁面后,對應的查詢時間范圍為觸發下鉆事件時圖表對應的時間。
相對時間:在原始日志頁面單擊字段值,跳轉到目標儀表盤頁面后,對應的查詢時間范圍為當前指定的相對時間。
整點時間:在原始日志頁面單擊字段值,跳轉到目標儀表盤頁面后,對應的查詢時間范圍為當前指定的整點時間。
請選擇儀表盤
選擇目標儀表盤。在觸發事件后,將跳轉到該儀表盤頁面。
是否繼承過濾
打開是否繼承過濾開關,將當前儀表盤已有的過濾條件同步到跳轉后的目標儀表盤中。
過濾
在過濾頁簽中輸入過濾語句,可將該過濾語句同步到跳轉后的目標儀表盤頁面中。
支持在過濾語句中插入可選參數域,將對應字段的值作為過濾條件。例如單擊輸入
${__source__}
,跳轉后的儀表盤的只展示符合${__source__}
取值的日志。變量
日志服務支持將此處的變量同步到跳轉后的目標儀表盤中。您可以在變量頁簽中配置變量。
說明如果選擇添加變量,則需要提前在跳轉到的目標儀表盤的圖表中配置查詢和分析語句的占位符變量。更多信息,請參見設置占位符變量。
最多可添加5個動態變量和5個靜態變量。
動態變量:以您單擊觸發事件時所在日志對應的字段值作為變量值進行查詢。
動態變量名:配置變量名。例如您已在快速查詢中定義的占位符變量
dynamic_ip
。動態變量值所在列:以指定列對應的值動態同步到目標儀表盤中。例如選擇
__source__
。表示以
__source__
的值替換儀表盤查詢中已定義的占位符變量,并進行查詢。
靜態變量:以您定義的固定值作為查詢值進行查詢。
靜態變量名:配置變量名。例如您已在儀表盤數據源中定義的占位符變量
static_ip
。靜態值:以固定的字段值同步到目標儀表盤中。例如
203.0.113.1
。表示以
static_ip
的值203.0.113.1
替換儀表盤中已定義的占位符變量,并進行查詢。占位符變量值為203.0.113.1
的日志都會被查詢到。
自定義HTTP鏈接
設置事件為打開自定義HTTP鏈接。
HTTP鏈接中的路徑部分表示訪問的目的端文件的層級路徑。
您可以在定義HTTP鏈接的路徑部分添加可選參數域。當您單擊原始日志中的高級事件時,會用字段值替換HTTP鏈接中的可選域參數,跳轉到重新定位的HTTP鏈接中。
配置
說明
配置名稱
配置名稱。
事件行為
選擇自定義HTTP鏈接。
協議
訪問自定義鏈接的協議類型。支持HTTP、自定義等。
請輸入鏈接地址
需要跳轉到的目標地址。
例如
www.example.com/s?wd=${sls_project}
,表示跳轉到這個地址。事件觸發后,${sls_project}替換為您所在Project名稱。使用系統變量
打開使用系統變量開關后,可選擇日志服務的系統變量插入到HTTP鏈接中,包括${sls_project}、${sls_dashboard_title}、${sls_chart_name}、${sls_chart_title}、${sls_region}、${sls_start_time}、${sls_end_time}、${sls_realUid}和${sls_aliUid}。
是否轉碼
打開是否轉碼開關后,會將鏈接中的內容進行encode轉碼。
可選參數域
日志服務支持將鏈接中的某一部分替換為觸發事件的字段值。觸發事件后,自動替換為字段值。
示例
將訪問日志采集到名為accesslog的日志庫中并創建1個快速查詢(IP地址和method的PV分布)實現下鉆分析。在原始日志中,為remote_addr字段設置高級事件為打開快速查詢。設置完成后,您在原始日志中單擊remote_addr即可跳轉到快速查詢查看對應的PV趨勢。
原始日志參考如下:
__source__:127.0.0.1
__tag__:__receive_time__:1613759995
__topic__:nginx_access_log
body_bytes_sent:5077
host:www.example.com
http_referer:www.example.com
http_user_agent:Mozilla/5.0 (X11; CrOS i686 12.0.742.91) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/192.0.2.2 Safari/534.30
http_x_forwarded_for:192.0.2.1
remote_addr:192.0.2.0
remote_user:gp_02
request_length:3932
request_method:POST
request_time:35
request_uri:/request/path-2/file-4
status:200
time_local:19/Feb/2021:18:39:50
upstream_response_time:0.09
其操作步驟如下:
查詢請求方法為POST且status為200的訪問PV分布情況。創建快速查詢IP地址和method的PV分布,其查詢語句和查詢結果如下:
* and request_method: POST and status: 200 | select count(*) as pv, remote_addr as ip,request_method as method group by ip,method order by ip desc
在快速查詢中設置變量
method
和status2
。生成變量后的語句變更為如下:* and request_method: ${method} and status: ${status2} | select count(*) as pv, remote_addr as ip,request_method as method group by ip,method order by ip desc
在原始日志頁簽,為remote_addr配置高級事件,事件行為打開快速查詢,其他關鍵配置如下:
請選擇快速查詢:IP地址和method的PV分布
過濾:不配置
變量:靜態變量為status2,取值為400。動態變量取值為method,取值為request_method。
在原始日志頁簽,單擊
。該日志字段中request_method為GET,status為404。
新打開窗口,查詢和分析框中語句變更為如下:
* and request_method: GET and status: 400 | select count(*) as pv, remote_addr as ip,request_method as method group by ip,method order by ip desc
查看快速查詢結果。
該示例中,靜態變量status2取值為400,對應status字段。您單擊觸發事件所在日志的request_method取值為GET,所以動態變量method取值為GET??焖俨樵兊慕Y果是GET中status為400的IP地址PV分布。
同樣的,當您單擊觸發事件所在日志的request_method取值為PUT時,快速查詢的是PUT中status為400的IP地址的PV分布。