當前位置:名人名言大全網 - 祝福短信 - 如何設計壹個mysql性能監控軟件

如何設計壹個mysql性能監控軟件

首先介紹壹下Percona-Toolkit中的工具pt-stall。說起PT工具包,大家都不陌生。pt-query-digest、pt-online-schema-change等常用工具都出自這個工具包,這裏就不介紹了。

pt-stall的主要功能是收集OS和MySQL出現問題時的診斷信息,包括:

1.CPU、IO、內存、磁盤、網絡等信息。在操作系統級別;

2.MySQL級行鎖等待,會話連接,主從副本,狀態參數等信息。

而且pt-stall是壹個Shell腳本,對不懂perl的人比較友好。腳本中的監控邏輯和監控命令也可以借鑒來構建自己的監控系統。

第三,使用

然後我們來看看如何使用這個工具。

pt-stall通常將MySQL作為後臺服務進行監控並等待觸發條件,在觸發條件發生時收集相關診斷數據。

與觸發條件相關的參數如下:

功能:

默認為status,表示監控SHOW GLOBAL STATUS的輸出;

也可以設置為processlist,即監控show processlist的輸出;

變量:

默認值為Threads_running,代表監控參數,具體監控項目根據上面的監控輸出指定;

閾值:

默認值為25,表示監控閾值。如果監控參數超過閾值,將滿足觸發條件。

當監控參數的值不是數字時,需要和匹配參數壹起使用,比如processlist的state列;

周期:

默認值為5,這意味著只有連續五次滿足觸發條件時,才會觸發收集。

連接參數:主機、密碼、端口、套接字。

其他重要參數:

Iterations:該參數指定pt-stalk在多次觸發收集後退出,默認情況下將壹直運行。

運行時:觸發收集後,該參數指定數據將被收集多長時間。默認值為30秒。

Sleep:該參數指定在觸發收集後,sleep將繼續監視多長時間。默認值為300秒。

間隔:指定狀態參數的檢查頻率,決定是否需要觸發采集。默認值為1秒。

Dest:監控數據的存儲路徑,默認為/var/lib/pt-stall。

保留時間:監控數據保留時間,默認為30天。

Daemonize:在後臺服務中運行,默認不開啟。

Log:後臺運行日誌,默認為/var/log/pt-stall.log。

收集:在觸發發生時收集診斷數據,默認情況下打開。

收集GDB:收集gdb堆棧跟蹤需要gdb工具。

收集跟蹤數據需要跟蹤工具。

收集-tcpdump:收集tcpdump數據需要tcpdump工具。