Edited at

yet another mackerel-plugin-proxysqlのご紹介


はじめに

私の所属しているリブセンスでは、ProxySQLv1 を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の設定ファイルに以下のように追記しましょう。(パスやオプションは注意)


mackerel-agent.conf

[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の精神でよろしくお願いします。