今日、我々はそれは、TPSとQPS ZABBIX監視により、当社msyqlデータベースを監視する方法を見て、これらの二つの概念に言及し、我々はQPSであるかを理解するために開始し、TPS?彼らはどのようにそれを計算しますか?私たちは、見て
二:)パーQPS(質問:秒あたりのクエリ処理は、毎秒何回リクエストを処理する方法を示し、これは、MySQLは、毎秒クエリ数であることを意味し、それはInnoDBエンジンとMysqlSAMの両方に適用されます
どのようにそれを計算し、QPSそれを計算するには?
「msyqladminステータス」によって質問と稼働時間の対応する値を得ることは非常に簡単、その後質問/稼働することにより得ることができます
質問= mysqladminの状況| awkは「{$ 6印刷します}
稼働時間= mysqladminの状況| awkの '{$ 2印刷}'
QPS =質問/アップタイム
TPS(秒あたりのトランザクション)
秒あたりのトランザクションの数は、単に取引の単一のデータベースサーバ処理単位時間の数であり、送信トランザクション処理データベース、多くのことを意味します。、InnoDBのようなトランザクションストレージエンジンは、このような指標が特徴
TPSは、和に基づいて分割com_commitとuptim com_rollback算出します
ロールバック= mysqladminの拡張状態| awkの'/ \ <Com_rollback \> / {$ 4印刷}'
= mysqladminの拡張状態をコミット| awkの'/ \ <Com_commit \> / {$ 4印刷}'
TPS =(com_rollback + com_commit)/稼働時間
[OK]〜あなたがここで直接シェルを使用することができ、より簡単になります、私たちはスクリプトを書きます、QPSとTPSの後に計算する方法を知っています
#1 MKDIRは/ usr / local / ZABBIX /スクリプト-p
Vimの/usr/local/zabbix/script/monitor.sh
#!/ binに/ bashの #Script時間:2018年7月30日 #Contact情報メール:[email protected] アップタイム= `mysqladminの状況| awkの{$ 2印刷} ' ` QPS(){ 質問=` mysqladminの状況| AWK '{$ 6印刷}' ` AWKが'{$質問BEGIN、printfの"%の.2fを\ n" '/' $稼働時間は、 '}' } #TPS TPS(){ ロールバック=` mysqladminの拡張状態を| awkの'/ \ <Com_rollback \> / {$ 4印刷}' ` =` mysqladminの拡張状態をコミット| AWK '/ \ <Com_commit \> / {$ 4印刷}' ` AWK 'BEGIN {printfの"%の.2fする\ n"、' $(($ロールバック+ $コミット)) '/' $稼働'}' } $ 1
#chmodの755 -R /usr/local/zabbix/script/monitor.sh
#Vimの/usr/local/zabbix/etc/zabbix_agentd.conf.d/performance.conf
UserParameter = mysql.status [*]には、/ usr / local / ZABBIX /スクリプト/ monitor.sh "$ 1"
#egrepの-v "#| ^ $" /usr/local/zabbix/etc/zabbix_agentd.conf#ZABBIXエージェントの構成は次のようです
ログファイル=を/ tmp / zabbix_agentd.log
サーバ= 192.168.2.129
ServerActive = 192.168.2.129
ホスト名= 192.168.2.144
タイムアウト= 8
含める=は/ usr / local / ZABBIXの/ etc / zabbix_agentd.conf.d / performance.conf
サーバー側のテスト:あなたは、キーの値を取得することができます
項目を監視し、[追加]
それは自分自身のテストではなく、あまりにも多くのクエリおよびトランザクショントランザクション量であるため、QPSは、監視やTPSのステータスの値を超えているので、監視が非常に小さいです
アイデアの概要:
1)まず、我々はZABBIXのmysqlこれらのパフォーマンス指標を監視していないので、我々は、カスタマイズしたい、我々はQPSのmysqlのステータスによって算出した値Quetionsと稼働時間を取得したい、我々はコミットとロールバック追加の値を取得します時間値の稼働時間を分割して、第二、QPSとTPSトランザクション処理と数あたりのクエリ数を得ることができるだけでなく、
UserParameterで定義されたキー値で記述されたスクリプトの2)の定義()
3)テンプレートを作成します