新增一個 YSQL 分析器

工具說明

當出現 HTTP 請求異常或者延時增加等情況時,運維人員需要及時定位問題。這時候就需要獲取 更多請求相關的資訊。傳統的方法包括分析日誌、抓包分析等。

日誌分析受限於配置的日誌欄位的數量,不一定能夠用來定位的問題。因為日誌經常被被採集到其 它系統進行分析,因此不能隨意修改日誌欄位。

生產上大部分是 HTTPS 請求,資料包已經被加密; 抓包分析無法深入 HTTP 的內容。因此抓包分析 能夠得到的資訊非常的有限。

在這種情況下,可以使用 YSQL 快速建立分析工具,得到需要的請求相關資訊。

YSQL 工具預設執行 3s 後退出,最多采樣 1000 個請求。

建立新工具

如下 YSQL 語句可以將會過濾出所有 HTTP 請求狀態碼大於 200 的請求,輸出請求的 URI 和 狀態碼的集合資訊。

select count(*), uri, status
from ngx.reqs
where status > 200
group by uri, status;

執行該工具得到結果示例如下:

在 YSQL 標籤欄的右邊有 Learn YSQL 快捷連結指向 YSQL 的使用者手冊。使用者可以點選 該連結查詢 YSQL 的語法和功能說明。