ZabbixによるMySQL監視
Zabbixの監視対象にインストールしたzabbixエージェントからMySQLに対してリクエストを投げてステータスを監視する事が出来ます。
ZabbixにはMySQLを監視する為のテンプレートが用意されていて、監視対象に対してテンプレートをアサインする事で監視を行います。
公式:MySQL監視の手順はこちらから
https://www.zabbix.com/jp/integrations/mysql
Connection_errorsデータが取れない
- MySQL: Connection errors max connections per second
- MySQL: Connection errors accept per second
- MySQL: Connection errors internal per second
- MySQL: Connection errors peer address per second
- MySQL: Connection errors select per second
- MySQL: Connection errors tcpwrap per second
6つのアイテムが取得出来ていません。
これらのアイテムがMySQL: Get status variablesの依存アイテムになっている事が分かります。
Get status variables
mysql.get_status_variablesというキーを使っている事が分かります。
/etc/zabbix/zabbix_agentd.d/に配置したtemplate_db_mysql.confから該当するキーが実際にMySQLに対して投げているリクエストを確認します。
mysql.get_status_variablesがMySQLに対して”show global status”をリクエストしている事が分かります。
show global status
show global statusを叩くとVariable_nameにステータス変数が、Valueに値が表示されます。
しかしconnection_errors関連の情報は有りませんでした。
MySQLドキュメント
MySQL 5.6 リファレンスマニュアル
https://dev.mysql.com/doc/refman/5.6/ja/server-status-variables.html#statvar_Connection_errors_accept
show global statusで出力される情報の各項目の一覧が有ります。
Connection_errors_xxx項目にこの様な記載が。
これらの変数は MySQL 5.6.5 で追加されました。
監視対象のMySQLが5.5.62だったのでConnection_errors関連の監視項目はサポートされていない事が分かりました。
まとめ
MySQLは絶えずバージョンアップしているのでリリースノートで変更の確認が必要です。
5.6.5のリリースノート
https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-5.html