Jbossの8080ポートのコネクション数で

475 views
Skip to first unread message

Tomoaki Tougou

unread,
Aug 4, 2008, 8:35:17 AM8/4/08
to komus...@googlegroups.com
いつもお世話になっています。東郷と申します。

ブラウザからだと社内から投稿できないので、
メーリングリスとに直接メールさせていただいてます。

JBossの8080ポートからのコネクション数を確認のため、ThreadPoolの
currentThreadsBusyとcurrentThreadCountの値をログにとりたく、
Mbeandocを使用して以下のMbeanから監視対象の設定を行おうとしています。

  jboss.web:type=ThreadPool,name=http-0.0.0.0-8080

しかしながら、属性の概要のとこかに該当する項目が出てこないです。
違うところ見ているのでしょうか?
採取方法が分かりましたら教えていただきたく。

よろしくお願いいたします。


Yusuke Yamamoto

unread,
Aug 4, 2008, 10:03:04 PM8/4/08
to komus...@googlegroups.com
東郷さん

虚無僧をお試し頂きありがとうございます。
当方でも現象を確認できました。
jmx-console 見える属性が虚無僧で見えませんね・・。
もう少し調査したうえでまたアップデートさせていただきます。
今しばらくお待ちください。

Best regards,
Yusuke Yamamoto

On 2008/08/04, at 21:35, Tomoaki Tougou wrote:

> いつもお世話になっています。東郷と申します。
>
> ブラウザからだと社内から投稿できないので、
> メーリングリスとに直接メールさせていただいてます。
>
> JBossの8080ポートからのコネクション数を確認のた
> め、ThreadPoolの
> currentThreadsBusyとcurrentThreadCountの値をログにと
> りたく、
> Mbeandocを使用して以下のMbeanから監視対象の設定を行お

Tomoaki Tougou

unread,
Aug 4, 2008, 11:44:43 PM8/4/08
to komus...@googlegroups.com
東郷です。

有難うございます。

了解いたしました。
よろしくお願いいたします。

2008-08-05 (火) の 11:03 +0900 に Yusuke Yamamoto さんは書きました:

Yusuke Yamamoto

unread,
Aug 5, 2008, 1:37:42 AM8/5/08
to komus...@googlegroups.com
ちょっとわかりました。
MBeanDoc では MBean の属性リストをクラス毎にとっている
(MBeanDoc:103)のですが、
JBossWeb(Tomcat) では BaseModelMBean クラスで色んな MBean
を表現しているため
ObjectName 毎にきちんと属性リストが取得できていないようです。
Velocity のテンプレートにも影響があるためちょっと根が深いです
が、余裕があれば今夜にでも直しますね。

Best regards,
--
Yusuke Yamamoto

Tomoaki Tougou

unread,
Aug 5, 2008, 7:01:57 AM8/5/08
to komus...@googlegroups.com
すいません。
お世話になります。。

2008-08-05 (火) の 14:37 +0900 に Yusuke Yamamoto さんは書きました:

Yusuke Yamamoto

unread,
Aug 11, 2008, 12:52:47 PM8/11/08
to komus...@googlegroups.com
東郷さん

本件お待たせして申しわけありません。
今夜・・・からすでに1週間ほど経っていますがまだ出来ていません。
技術的には難しくないのですが、影響箇所が多くもう少し時間がか
かりそうです。
恐れ入りますが今しばらくお待ちください。脳内コーディングは幾
分進んでいます。
今週末には・・・となんとなく自分に発破を掛けておきます。

Best regards,
--
Yusuke Yamamoto

Tomoaki Tougou

unread,
Aug 12, 2008, 3:42:54 AM8/12/08
to komus...@googlegroups.com
東郷です。

お手数をおかけします
ゆっくりでいいです。

あと、
確認なのですが、

下のような属性の戻りがCompositeDataSupportクラスのものから
さらに、特定のデータ(以下ではmaxの値等)はとりだせないですよね。

javax.management.openmbean.CompositeDataSupport(compositeType=javax.management.openmbean.CompositeType(name=java.lang.management.MemoryUsage,items=((itemName=committed,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)),(itemName=init,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)),(itemName=max,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)),(itemName=used,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)))),contents={committed=393216, init=524288, max=393216, used=0})

2008-08-12 (火) の 01:52 +0900 に Yusuke Yamamoto さんは書きました:

Yusuke Yamamoto

unread,
Aug 12, 2008, 12:53:50 PM8/12/08
to komus...@googlegroups.com
> 下のような属性の戻りがCompositeDataSupportクラスのものから
> さらに、特定のデータ(以下ではmaxの値等)はとりだせな
> いですよね。
はい。ご認識の通りです。現状、アトリビュートを取ってきて
String.valueOf()
に渡して取れる String 値を記録する(Komuso2.java:
128) だけの作りです。
ので、アトリビュートのさらにアトリビュート、みたいな値を書き
出すことはできません。

虚無僧は汎用性を持たせ、色々なニーズに柔軟に対応することは諦
めています。
極力シンプルな作りにし、カスタマイズが簡単にできることを目標
にしています。

今回のニーズに応える手っ取り早いハックは、128行目あたりで
instanceof で型を判
定して分岐することでしょうか。
以下のようなコード(検証はしていません)にすれば
getMax() の値を記録できそうです。
---------
Object obj = connection.getAttribute(theBean, attributeName);
if(obj instanceof CompositeDataSupport){
return String.valueOf(((CompositeDataSupport)obj).getMax());
}else{
return String.valueOf(obj);
}
---------


Best regards,
--
Yusuke Yamamoto

On 2008/08/12, at 16:42, Tomoaki Tougou wrote:

> 東郷です。
>
> お手数をおかけします
> ゆっくりでいいです。
>
> あと、
> 確認なのですが、
>

> 下のような属性の戻りがCompositeDataSupportクラスのものから
> さらに、特定のデータ(以下ではmaxの値等)はとりだせな
> いですよね。
>
> javax
> .management
> .openmbean
> .CompositeDataSupport
> (compositeType
> =
> javax
> .management
> .openmbean
> .CompositeType
> (name
> =
> java
> .lang
> .management
> .MemoryUsage
> ,items
> =
> ((itemName
> =
> committed
> ,itemType
> =javax.management.openmbean.SimpleType(name=java.lang.Long)),
> (itemName
> =
> init
> ,itemType
> =javax.management.openmbean.SimpleType(name=java.lang.Long)),
> (itemName
> =
> max
> ,itemType
> =javax.management.openmbean.SimpleType(name=java.lang.Long)),
> (itemName
> =
> used
> ,itemType
> =
> javax
> .management
> .openmbean

Tomoaki Tougou

unread,
Aug 12, 2008, 9:21:53 PM8/12/08
to komus...@googlegroups.com
了解いたしました。

ありがとうございます。


2008-08-13 (水) の 01:53 +0900 に Yusuke Yamamoto さんは書きました:

Reply all
Reply to author
Forward
0 new messages