日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Access Log壓測

性能測試PTS的Access Log壓測功能,僅依賴網關日志,對服務端零侵入,通過PTS界面的簡單配置,可以快速實現真實的網關流量回放。本文介紹如何使用Access Log壓測功能。

方案概覽

image

Access Log壓測通過簡單的配置即可實現網關真實流量回放,并且將壓測請求參數化,自動創建壓測場景,以及通過簡單的登錄接口配置即可解決登錄態過期的問題。其配置主要分為四個模塊:

  • 配置日志生產者:您的訪問日志可能來自于負載均衡ALB、CLB、MSE網關或者云服務器ECS中自建的WEB服務,首先需要將訪問日志投遞到日志服務SLS中。關于日志投遞可以參考訪問日志配置CLB訪問日志開啟網關日志投遞使用Nginx配置模式采集日志

  • 配置日志服務:用于接收日志生產者投遞的日志。

  • 配置Access Log壓測:分析日志服務中存儲的日志,獲取待壓接口并構造壓測場景。

  • 編輯PTS場景:待Access Log壓測場景構造完成后,將跳轉到PTS場景編輯頁面,您可在此頁面做進一步配置,也可以直接調試場景并啟動壓測。

日志規范

重要
  1. URL字段索引和值存在,且索引名在["request_uri", "path", "request_url", "url", "uri", "requestURI", "requestURL"]中。如果URL的路徑和參數是分開記錄的,參數字段值存在,且索引名在["method", "http_method", "request_method"]中。

  2. 如需回放POST請求,必須滿足以下要求:

    • HTTP POST body字段索引和值存在,且索引名在["body", "http_body", "http_request_body", "request_body"]中。當前僅支持application/x-www-form-urlencoded, text/plain, application/json格式的body,不支持二進制數據body。

    • Content-Type字段索引和值存在,且索引名在["content_type", "contentType"]中,否則PTS將自動推斷Content-Type。

    • 若您使用MSE網關,可參考將完整的請求應答信息添加到訪問日志,將POST請求的body打印到網關日志中。如此打印的POST請求,PTS會直接支持回放。

  3. 如使用簡單模式,還需滿足以下規范,不符合規范的日志會被忽略:

    • 域名字段索引和值存在,且索引名在["host", "http_host", "authority"]中。

    • HTTP協議字段索引和值存在,且索引名在["http_protocol", "protocol", "scheme", "http_scheme"]中,且值為"http"或"https",否則將默認使用"http"。

1. 創建Access Log壓測場景

開始之前,確保您已開通日志服務,創建Project、標準型Logstore并完成日志采集和開啟索引。具體操作,請參見創建項目Project創建Logstore創建索引

  1. 登錄PTS3.0控制臺,在左側導航欄選擇性能測試 > 創建場景,然后單擊Access Log壓測image

  2. 查詢 / 分析日志

    選擇Access Log所在SLS日志 region日志 project日志庫,設置查詢參數,時間段,單擊查詢/分析查詢需要回放的日志。日志索引需要滿足日志規范要求,不符合規范的日志將被忽略。示例日志如下:image

2. 選擇壓測模式

創建Access Log 壓測場景頁面,打開簡單回放模式開關并單擊選擇目標接口即可進入簡單模式;關閉簡單回放模式開關并單擊選擇目標接口即可進入標準模式。

image

說明

簡單模式直接回放日志記錄的流量,不解析請求結構,不限制不同的域名和接口數量,但只能控制整個場景的RPS,并且不關心登錄態。

標準模式能配置登錄態,能分析各接口的請求數和MaxQPS分布,并能精確控制每個接口的壓力值,但限制不同的域名和接口數量。

您可根據具體需求選擇簡單模式或標準模式做日志回放,對比如下:

壓測模式

說明

簡單模式

  • 當前僅支持GET和POST請求的回放,PTS會原樣回放記錄在日志中的請求(對于不帶body的POST請求會用空body進行回放),可以選擇是否回放POST請求。

  • 流量回放場景會根據HTTP 請求方法(GET/POST),協議類型(HTTP/HTTPS),以及POST Body的Content-Type字段將請求進行分類。PTS會使用不同的抽象接口回放各類接口,如HTTP GET請求和HTTPS GET請求分屬于兩個不同的抽象接口。每個接口之間是并行關系,使用從日志中抽取的參數。

  • 簡單模式不關心登錄態,如果有配置登錄態的需求,請使用標準模式

標準模式

  • 當前僅支持GET和POST請求的回放,并自動過濾請求靜態資源的接口。不帶請求body的POST請求將不做回放。流量回放時每個接口之間是并行關系,使用從日志中抽取的參數。

  • 登錄態默認使用Cookie,使用的Cookie數為登錄接口的參數文件的行數且最多100個,默認不配置請求Header。如果有進一步的要求,可以在生成PTS壓測場景后,在場景編輯頁面進行進一步編輯。

簡單模式

  1. 配置回放參數

    簡單模式分析結果展示所選時段內有效請求數,您可以進行以下參數的配置:

    • 是否回放POST請求:開啟開關后PTS將為您回放POST請求,但如果您的Request Body并未打到Access Log中, 回放POST請求將不帶Body, 可能會出錯,謹慎開啟。

    • 是否重復回放:若開啟重復回放,回放到日志末尾時將會從頭循環回放請求。 若關閉重復回放,回放到末尾時將停止發壓,但未達到指定時長回放不會自動停止,請在請求發送完后手動停止回放避免更多VUM消耗。

    • 回放時長(分鐘):流量回放的持續時長,默認十分鐘。

    • 每秒請求數:配置流量回放的速率,PTS會以該速率回放您的Access Log流量,該數值會以平均原則分配到每個抽象接口上。image

  2. 構造壓測場景

    單擊構造壓測場景,PTS會總結回放配置的結論,單擊確認,將跳轉到PTS場景編輯頁面。您可在此頁面進一步編輯生成的場景,也可以跳過(可選)3. 配置PTS場景直接啟動壓測

標準模式

說明

如果日志中包含請求域名,且字段名在["host", "http_host", "authority"]中,PTS將會自動補全host,同時你也可以自行修改。當前僅支持單host, 所有接口共享這個host。如果您需要回放多個域名,可以依次選擇接口去創建場景,然后在壓測場景中做進一步修改即可。

  1. 選擇目標接口

    PTS 展示所選的時間段從 access log 獲知的頻數和 QPS 維度下 TOP10 接口,可單擊接口旁的灰色圓圈選擇待壓接口。已選的接口會展示在已選目標接口區域。image

  2. 配置壓測參數

    如果待壓接口無需登錄,則打開目標接口無需登錄開關;如果待壓接口需要登錄態信息,則需要配置登錄接口信息,配置方法如下所示:

    a. 從接口選擇:如果查詢出的接口中包括登錄接口,可以選擇此項PTS會自動將該接口作為登錄接口,使用日志中的參數,導出Cookie登錄態使用,無需您手動配置。image

    b. 配置登錄接口:如果展示出的接口沒有登錄的接口,您也可以手工配置。輸入登錄接口地址,如http://example.com/login。配置登錄接口的body參數,如username、password。可以用${}引用參數,用到的參數請點擊配置參數文件,更多信息,請參見數據源image

  3. 確認配置無誤后,單擊構造壓測場景,將跳轉至PTS場景編輯頁面。您可在此頁面進一步編輯生成的場景,也可以跳過(可選)3. 配置PTS場景直接啟動壓測

(可選)3. 配置PTS場景

  1. 單擊數據導出,可編輯使用的Cookie數。如需要使用其他登錄態比如token,單擊登錄接口后,設置出參,并在數據導出節點配置導出,詳見數據導出指令image

  2. 單擊任意接口,可為接口添加Header。image

  3. 施壓配置請參考:壓力模型指定施壓IP數

4. 啟動壓測

  1. 單擊調試場景,對配置的場景進行調試,驗證配置是否正確。具體操作,請參見調試場景

  2. 單擊保存去壓測,在彈出的對話框中選擇立即執行并單擊啟動壓測,系統將跳轉到壓測中頁面,您可在此頁面查看各項性能指標。

image

5. 分析壓測結果

壓測結束后,您可在報告列表中查看生成的壓測報告。具體操作,請參考查看PTS壓測報告分析錯慢調用鏈智能瓶頸分析