Deployment Weblogic-使用Wlst获取部署类型
我正在尝试使用wlst监视域中托管服务器上的部署状态 我使用的是WebLogic10.3 以下是我到目前为止的情况:Deployment Weblogic-使用Wlst获取部署类型,deployment,monitoring,weblogic-10.x,wlst,Deployment,Monitoring,Weblogic 10.x,Wlst,我正在尝试使用wlst监视域中托管服务器上的部署状态 我使用的是WebLogic10.3 以下是我到目前为止的情况: domainRuntime() applnRtStEuntimeBean = cmo.getAppRuntimeStateRuntime() servers=domainRuntimeService.getServerRuntimes() for server in servers: serverName = server.getName() appln
domainRuntime()
applnRtStEuntimeBean = cmo.getAppRuntimeStateRuntime()
servers=domainRuntimeService.getServerRuntimes()
for server in servers:
serverName = server.getName()
applns = server.getApplicationRuntimes();
for appln in applns:
print 'Application Name #', appln.getApplicationName()
print 'Applican Current State #', applnRtStEuntimeBean.getCurrentState(appName,serverName)
print 'Applican Intended State #', applnRtStEuntimeBean.getIntendedState(appName)
这提供了所有应用程序的当前状态,无论其“类型”如何。
有没有一种方法可以使用wlst按类型筛选应用程序?
例如,我只想检查“企业应用程序”和“Web应用程序”的状态,而忽略所有“库”
我已经看过MBeans Java文档,但没有看到任何可以让我了解应用程序类型的东西
作为参考,管理控制台上的“部署”页面中列出了应用程序名称、类型、运行状况和状态
感谢您的反馈/建议/评论 Mohan是的,您可以通过两个步骤过滤掉它。 当遇到库文件时,可以在for循环中使用if条件,并在ignore中使用“continue”
applname=['test.war','test2.ear','test3.jar']
wls:/offline> for s in applname:
... if s.endswith('jar'):
... print 'ignore'
... continue
... print s
# do your task of monitoring here
...
test.war
test2.ear
ignore
请注意,这里的每个块都必须遵循正确的缩进。
HTH应用程序名称没有扩展名来标识它们!!因此,这将不起作用。如果你想,你可以重命名它们,对吗?另一种方法是将lib文件列表保存在单独的列表变量中。并尝试如上所示跳过是的,重命名应用程序或使用“skiplist”将起作用。这应作为最后一个选项保留。应该有一种方法可以使用weblogic/mbean服务器API实现这一点。如果管理控制台可以获取此信息,我们应该能够使用WLST执行相同的操作。