はじめに
私の所属しているリブセンスでは、ProxySQLの v1
を2017年から利用しています。
本番投入に合わせて私が作ったMackerel用のmetricsプラグインがあるのですが、作りが雑だったのでリポジトリ非公開で利用していました。
時は流れて2019年1月末、ProxySQLの v2.0.1
が公開されました。
こちらはProxySQL v2 から「 RC 」が取れた最初のリリースです。
ということで、 ProxySQLはv2を本番投入が可能になったと言える でしょう。
この機会に、上述のMackerelプラグインを更新してちゃんとGitHubにアップし、バージョン管理するようにしました。
今回はそのご紹介です。
プラグイン紹介
最初に注意事項
Mackerel公式プラグインレジストリに同名の「 mackerel-plugin-proxysql
」が登録されていますが、そちらはhfm氏作成のものです。
同じ目的で同じようなものを書いているので、 とても似ていますが別物です のでご理解ください。互換性は、有りそうで無いと思います。
※ 同名であることで支障が出てきたら、名前を変えます。
プラグインのリポジトリ
前置きが長くなりましたが、プラグインはこちらです。
インストール
ProxySQLのサーバーで利用するのが基本形です。
インストールする場合は、 mkr
インストール済みの環境であれば、以下でOKです。
sudo mkr plugin install livesense-inc/mackerel-plugin-proxysql
mackerel-agentの設定ファイルに以下のように追記しましょう。(パスやオプションは注意)
[plugin.metrics.proxysql]
command = "/opt/mackerel-agent/plugins/bin/mackerel-plugin-proxysql -connection-pool -monitor-stats -username xxxx -password xxxx"
※ 使い方について、詳しくはREADME or ヘルプを見てください。
エージェントを再起動すれば、Mackerelでグラフが描かれるはずです。
プラグインの機能の補足説明
ProxySQLは取得可能なステータスが多い特徴があります。加えて、2017年頃のProxySQLのバージョンに比べると、v2になるまでの間に追加で取得可能になったステータスがいくつかあります。それらも今回のプラグインのアップデートにあわせ、取得できるようにしました。
その結果、 このプラグインを利用すると 標準で15グラフ、63メトリックが追加されます。
加えて、 モニター関連 のステータスを -monitor-stats
オプションで追加できます。
有効化すると 更に2グラフ、7メトリックが追加 されます。
さらに、コネクションプール関連 のステータスを -connection-pool
オプションで追加できます。
有効化した場合、 5グラフ、バックエンドの数x8メトリックが追加 されます。
つまり、 全ての出力を行うとホストメトリック数が爆発的に増加します。
メトリック増は課金増にも繋がるので、ご利用の際はご注意を・・・
終わりに
グラフとして見にくい箇所、メトリックのまとめ方が気に食わないこと、そもそもバグもあるかもしれません。OSSの精神でよろしくお願いします。