第04問:僅用慢日誌文件,如何快速獲取分時報告?

  • 2020 年 3 月 26 日
  • 筆記

問題:

僅用慢日誌文件,如何快速獲取分時報告?

如果有監控系統,獲取分時報告(每小時慢查詢的條數報告)不難,如果只有慢日誌文件,就會有點費勁。

實驗:

通過 pt-query-digest –timeline 功能,可以輸出帶時間戳的慢查詢條目

用 sed 將 timeline 報告濾出

安裝 termsql

使用 termsql,將報告導入,並使用 SQL 查詢一條記錄,以展示 termsql 的效果

可以看到 termsql 將 timeline 報告的每一行,整理成了一條數據,放在 SQLite 中。

下面就可以盡情使用 SQL 獲取分時報告:

用一個複雜一點慢日誌,獲得如下結果:

可以輕鬆定位到慢查詢的熱點時段,也便於發現業務的周期性規律。

termsql 是一個很方便的小工具:

1. 可以用於將文本導出到 SQLite 中,方便 SQL 查詢。

2. 它與 ps 或者 top 合用也有驚喜,比如找出 CPU 佔用率高於 25% 的進程:


關於 MySQL 的技術內容,你們還有什麼想知道的嗎?趕緊留言告訴小編吧!