Discussions

Performance and scalability: Obtaining WebSphere 5.1 PMI Data With WSADMIN

  1. I am having a problem obtaining PMI data from WebSphere 5.1 using wsadmin.sh and a jacl script.

    I have the counters that I want, and the jacl script works if I source the jacl script after launching wsadmin.sh; but if I try to run it from a shell script I get no output to screen or to a file.

    Any ideas would be appreciated!

    Example of output when I run from a script, also tried using puts to write to a file:

    [root@redhat2 bin]# ./wsadmin.sh -f try.jacl
    WASX7209I: Connected to process "dmgr" on node redhat2-dmgr using SOAP connector; The type of process is: DeploymentManager
    java0xe


    Example of output when I run interactively:

    [root@redhat2 bin]# ./wsadmin.sh
    WASX7209I: Connected to process "dmgr" on node redhat2-dmgr using SOAP connector; The type of process is: De
    ploymentManager
    WASX7029I: For help, enter: "$Help help"
    wsadmin>source try.jacl
    {Description threadPoolModule.desc} {Descriptor {{Node redhat1-node1} {Server server_4} {Module threadPoolM
    odule} {Name Servlet.Engine.Transports} {Type COLLECTION}}} {Level 7} {Data {{{Id 2} {Descriptor {{Node redhat1-node1}
    {Server server_4} {Module threadPoolModule} {Name Servlet.Engine.Transports} {Type DATA}}} {PmiDataInfo
    {{Name threadPoolModule.threadDestroys} {Id 2} {Description threadPoolModule.threadDestroys.desc} {Level 1} {Comment
     {Total number of threads destroyed}} {SubmoduleName null} {Type 2} {Unit unit.none} {Resettable true}}} {Time 11144
    49052195} {Value {Count 4027} }} {{Id 4} {Descriptor {{Node redhat1-node1} {Server server_4} {Module thread
    PoolModule} {Name Servlet.Engine.Transports} {Type DATA}}} {PmiDataInfo {{Name threadPoolModule.poolSize} {Id 4} {De
    scription threadPoolModule.poolSize.desc} {Level 7} {Comment {Average number of threads in Pool}} {SubmoduleName null} {Type 5} {Unit unit.none} {Resettable true}}} {Time 1114449052195} {Value {Current 14} {LowWaterMark 1} {HighWaterMark 32} {MBean 9.939689066858032} }} {{Id 1} {Descriptor {{Node redhat1-node1} {Server server_4} {Module threadPoolModule} {Name Servlet.Engine.Transports} {Type DATA}}} {PmiDataInfo {{Name threadPoolModule.threadCreates}
     {Id 1} {Description threadPoolModule.threadCreates.desc} {Level 1} {Comment {Total number of thread created}} {Subm
    oduleName null} {Type 2} {Unit unit.none} {Resettable true}}} {Time 1114449052195} {Value {Count 4041} }} {{Id 3} {Descriptor {{Node redhat1-node1} {Server server_4} {Module threadPoolModule} {Name Servlet.Engine.Transports
    } {Type DATA}}} {PmiDataInfo {{Name threadPoolModule.activeThreads} {Id 3} {Description threadPoolModule.activeThreads.desc} {Level 7} {Comment {The number of concurrently active threads}} {SubmoduleName null} {Type 5} {Unit unit.none} {Resettable true}}} {Time 1114449052195} {Value {Current 12} {LowWaterMark 0} {HighWaterMark 31} {MBean 2.559600032213093} }} {{Id 5} {Descriptor {{Node redhat1-node1} {Server server_4} {Module threadPoolModule} {Name Servlet.Engine.Transports} {Type DATA}}} {PmiDataInfo {{Name threadPoolModule.percentMaxed} {Id 5} {Description threadPoolModule.percentMaxed.desc} {Level 7} {Comment {Average percent of the time that all threads are in use}} {SubmoduleName null} {Type 5} {Unit unit.none} {Resettable true}}} {Time 1114449052195} {Value {Current 0} {LowWaterMark -1} {HighWaterMark -1} {MBean 0.0} }}}}
    wsadmin>

    Threaded Messages (2)

  2. I was using invoke_jmx incorrectly.

    When invoke_jmx is used, it returns a reference to the Java object (instead of its value). What you can do here is (since a String object is returned):

    set out [$AdminControl invoke_jmx $perfOName getStatsString $params $sigs]
    set out2 [$out toString]
    puts $out2"
  3. try.jacl[ Go to top ]

    Pls kindly send the try.jacl script.