Nagios/Icinga で MySQL のパフォーマンスデータ履歴を残す
標準の check_mysql を呼び出すラッパースクリプトを書いた。 <pre>#!/bin/sh LINE= /usr/lib64/nagios/plugins/check_mysql $* RC=$? THREADS= echo $LINE | awk '{print $4}' SLOW_QUERIES= echo $LINE | awk '{print $9}' OPEN_TABLES= echo $LINE | awk '{print $17}' QUERIES_PER_SECOND_AVG= echo $LINE | awk '{print $22}' echo $LINE | threads=$THREADS, slow_queries=$SLOW_QUERIES, open_tables=$OPEN_TABLES, queries_per_second_avg=$QUERIES_PER_SECOND_AVG exit $RC </pre> こんな感じでパフォーマンスデータ(パイプの後ろ)が取れていれば成功。これを Nagios/Icinga のコマンドとして、標準プラグインの代わりに呼び出す。 <pre>$ ./check_mysql2 Uptime: 1296308 Threads: 2 Questions: 3299665 Slow queries: 0 Opens: 73 Flush tables: 1 Open tables: 64 Queries per second avg: 2.545 |
threads=2, slow_queries=0, open_tables=64, queries_per_second_avg=2.545 </pre> |