Use the AdminControl object to interact with running MBeans.
In the WebSphere® Application Server, MBeans represent
running objects. You can interrogate the MBean server to see the objects
it contains.
- Use the queryNames command to see running MBean objects.
For example:
Using Jacl:
$AdminControl queryNames *
Using
Jython:
print AdminControl.queryNames('*')
This command
returns a list of all MBean types. Depending on the server to which
your scripting client attaches, this list can contain MBeans that
run on different servers:
- If the client attaches to a stand-alone WebSphere Application
Server, the list contains MBeans that run on that server.
- If the client attaches to a node agent, the list
contains MBeans that run in the node agent and MBeans that run on
all application servers on that node.
- If the client attaches to a deployment manager,
the list contains MBeans that run in the deployment manager, all of
the node agents communicating with that deployment manager, and all
application servers on the nodes served by those node agents.
- The list that the queryNames command returns is a string
representation of JMX ObjectName objects. For example:
WebSphere:cell=MyCell,name=TraceService,mbeanIdentifier=TraceService,
type=TraceService,node=MyNode,process=server1
This example represents a TraceServer object that runs
in server1 on MyNode.
- The single queryNames argument represents the ObjectName object
for which you are searching. The asterisk ("*") in the example means
return all objects, but it is possible to be more specific. As shown
in the example, ObjectName has two parts: a domain, and a
list of key properties. For MBeans created by the WebSphere Application
Server, the domain is WebSphere. If you do not specify
a domain when you invoke queryNames, the scripting client assumes
the domain is WebSphere. This means that the first example
query above is equivalent to:
Using Jacl:
$AdminControl queryNames WebSphere:*
Using
Jython:
AdminControl.queryNames('WebSphere:*')
- WebSphere Application Server includes the
following key properties for the ObjectName object:
- name
- type
- cell
- node
- process
- mbeanIdentifier
These key properties are common. There are other key properties
that exist. You can use any of these key properties to narrow the
scope of the queryNames command. For example:Using Jacl:
$AdminControl queryNames WebSphere:type=Server,node=myNode,*
Using Jython:
AdminControl.queryNames('WebSphere:type=Server,node=myNode,*')
This
example returns a list of all MBeans that represent server objects
running the node myNode. The, * at the end of the ObjectName object
is a JMX wildcard designation. For example, if you enter the following:Using
Jacl:
$AdminControl queryNames WebSphere:type=Server,node=myNode
Using
Jython:
print AdminControl.queryNames('WebSphere:type=Server,node=myNode')
you get an empty list back because the argument to queryNames
is not a wildcard. There is no Server MBean running that has exactly
these key properties and no others.
- If you want to see all the MBeans representing applications running
on a particular node, invoke the following example:
Using Jacl:
$AdminControl queryNames WebSphere:type=Application,node=myNode,*
Using
Jython:
print AdminControl.queryNames('WebSphere:type=Application,node=myNode,*')