先日のJVM Operations Casual Talks、GCやメモリ管理についてまとまった発表や、モニタリングの手法などの話が聞けてよい会でした。

微妙に意識が高まっているところで、メモリ使用量やGCの統計情報を取得して、GrowthForecastでグラフを作ってくれるスクリプトを書きました。それPla、それFluentd系のやつです

https://github.com/kazeburo/jstat2gf

この元ネタは JVM Operation Casual Talksでのモリスさんの発表にでてきたグラフです。あれを簡単に作れるツールになります。

某JVMのプロセスに対して実行すると、こんな感じのグラフになります。上から「NEW領域」「OLD領域」「Permament領域」「1秒あたりのFull GCの回数」「1秒あたりのFull GCにかかった時間」となっています。

jstat2gf.png

なんかFull GCがいっぱい実行されてますね!

デーモンではない普通のscriptなので、cronで実行します

PATH=/path/to/java/bin:/usr/bin
* * * * * perl /path/to/jstat2gf.pl --gf-uri=http://gf/ --gf-service=example --gf-section=jvm --gf-name-prefix=app001 --jvm-pid=$(pgrep -of 'process name')

今のところインストールはgit cloneとcpanmで。

$ git clone https://github.com/kazeburo/jstat2gf.git
$ cd jstat2gf
$ cpanm --installdeps .

perl-5.14以上なら追加の依存モジュールはないと思われます。

最後に、JVM Operation Casual Talksでの自分のLT資料はこちらです。普段やっているperlのWebアプリケーションの運用を紹介して、それJVMだとどうしたらええの?という疑問をまとめたつもり

このブログ記事について

このページは、Masahiro Naganoが2014年4月10日 16:08に書いたブログ記事です。

ひとつ前のブログ記事は「dstat + fluentd + Graphite + Grafana でサーバモニタリングする」です。

次のブログ記事は「「サーバ/インフラエンジニア養成読本 管理/監視編」の改訂新版が出ました」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

OpenID対応しています OpenIDについて
Powered by Movable Type 4.27-ja