[英]How to terminate websphere app server instance from wsadmin?
I have a jython script which stops and starts a websphere application server v7 instance. 我有一个jython脚本,该脚本停止并启动一个Websphere Application Server v7实例。 I normally use AdminControl.stopServer command for the stopping, but sometimes the instance gets hung up, and the request thread times out. 我通常使用AdminControl.stopServer命令进行停止,但是有时实例被挂起,并且请求线程超时。 Then I have to terminate the instance from the web console. 然后,我必须从Web控制台终止实例。 Is there a way to make the instance "terminate" immediately, rather than wait for a graceful stop ? 有没有办法使实例立即“终止”,而不是等待正常停止? I basically want the web console terminate button functionality in wsadmn. 我基本上希望Web控制台在wsadmn中终止按钮功能。
Command assistance says: 指挥协助说:
AdminControl.invoke('WebSphere:name=NodeAgent,process=nodeagent,platform=common,node=node1,diagnosticProvider=true,version=8.5.5.2,type=NodeAgent,mbeanIdentifier=NodeAgent,cell=ndcell,spec=1.0', 'terminate', '[server1]', '[java.lang.String]') AdminControl.invoke('WebSphere:name = NodeAgent,process = nodeagent,platform = common,node = node1,diagnosticProvider = true,version = 8.5.5.2,type = NodeAgent,mbeanIdentifier = NodeAgent,cell = ndcell,spec = 1.0', 'terminate','[server1]','[java.lang.String]')
def getNodeNameForServer(serverName):
nodes = AdminConfig.list("Node").split("\n")
for node in nodes:
nodeServers = AdminConfig.list("Server", node).split("\n")
for nodeServer in nodeServers:
sname = AdminConfig.showAttribute(nodeServer, "name")
if sname == serverName:
nname = AdminConfig.showAttribute(node, "name")
return nname
return 'NONE'
def terminateServer(serverName):
nodeName=getNodeNameForServer(serverName)
if (nodeName != "NONE"):
print '\nTerminating server: %s\n' % (serverName)
nodeAgentObj=AdminControl.completeObjectName('type=NodeAgent,node='+nodeName+',*')
print AdminControl.invoke(nodeAgentObj, 'terminate', '['+serverName+']', '[java.lang.String]')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.