jar プロセス使用率の監視について
お世話になっております。
とても自力で解決できなさそうな問題にぶち当たってしまったため利用させて頂きます。
minecraft(Javaで作られた)というゲームをCentOS上にて動かしています。
Zabbixの監視によってjarプロセスの使用率をグラフにしたいと思っているのですが、詰まっております。
メモリ(特にヒープ領域)を監視してOutOfMemorryを回避したいと考えています。
Zabbixで、何という名前で値を取得していいのか不明のため、ご存じの方いらっしゃいましたらご教授頂けないでしょうか?
よろしくお願い致します。
こちらでもJMX などを利用しながら見つけていこうと考えておりますが、先人の知恵等がございましたら何卒ご協力お願い致します。
TNK - 投稿数: 4769
jarプロセスと書かれているので、もしかして、アーカイブされた
ファイルの展開を頻繁に行うようなゲームなのでしょうか?
jarプロセスを監視できるかわかりませんが、通常のJavaアプリケ
ーションサーバであれば、起動時のスクリプトに起動オプションを
追加して、特定のポートでJMXのリクエストを受け付ける設定を行
い、Zabbix 2.0以降であれば、Zabbix Java Gatewayの起動と、
zabbix_server.confのStartJavaPollersを1以上に設定して
zabbix_serverを再起動することで監視を行うことが可能となりま
す。
まずは、どのヒープの領域を消費してしまっているのかを確認され
てみてはいかがでしょうか?
例えば、以下のURLにあるような情報を確認してみてください。
http://www.atmarkit.co.jp/ait/articles/1004/13/news094.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20060605/239936/
そして、JDKに含まれるjConsoleなども利用してみてはいかがでし
ょうか。
各種値の変化を確認して、どの項目を監視するかや閾値をどうする
かを絞り込みやすくなると思います。
ご参考:
Zabbix 2,0でJavaアプリケーションの監視
http://thinkit.co.jp/story/2012/04/13/3504
ninja4job - 投稿数: 16
TNK 様
いつも丁寧な回答誠にありがとうございます!
お陰様で、8割程進みました。
Jconsoleを用いて調べたところ、きちんとメモリのグラフが確認でき、アトリビュートネームも取得することができました!
MemHeapUsedM
あとはZabbix側での設定で完了となります。
ご助言誠にありがとうございます!