gpt4 book ai didi

websphere - 人性化的 WebSphere 脚本工具/库?

转载 作者:行者123 更新时间:2023-12-03 15:47:45 29 4
gpt4 key购买 nike

我正在开发许多用于管理 WAS 基础设施的脚本,我觉得 IBM 的某个人搞砸了 wsadmin故意。这不可能是意外。

这是一个“简单”的例子:

for node in AdminConfig.list('Node').splitlines():
nodeName = AdminConfig.showAttribute(node, 'name')
for srv in AdminConfig.list('Server', node).splitlines():
if AdminConfig.showAttribute(srv, 'serverType') == 'APPLICATION_SERVER':
serverName = AdminConfig.showAttribute(srv, 'name')
prop = AdminConfig.getid('/Node:%s/Server:%s/JavaProcessDef:/JavaVirtualMachine:/Property:java.awt.headless/' % (nodeName, serverName))
if prop:
AdminConfig.modify(prop, [ ['value','true'] ])
else:
jvm = AdminConfig.getid('/Node:%s/Server:%s/JavaProcessDef:/JavaVirtualMachine:/' % (nodeName, serverName))
AdminConfig.create('Property', jvm, [ ['name', 'java.awt.headless'], ['value', 'true'] ], 'systemProperties')

上面的脚本不仅不可维护,而且不可读。 wsadmin工具是一个只写工具!一个人写了一个脚本,第二天无法理解它是如何工作的,甚至无法理解它的作用!

像这样不是更容易吗?:

for node in list('Node'):
nodeName = node.name
for srv in node.list('Server'):
if srv.serverType == 'APPLICATION_SERVER':
jvm = srv.processDefinitions[0].jvmEntries[0]
jvm.createOrModify('Property', { 'name': 'java.awt.headless' }, { 'value': 'true' })

...如果只有 WAS 脚本更友好,人们可以轻松地弄清楚脚本的作用,而无需花几分钟时间来尝试理解忙碌的 API。更不用说易于维护了。

有没有人见过/尝试过实现更友好的管理工具(或 wsadmin 库)?

我问是因为我实际上计划开发一个友好的 Jython 库,我只是想避免重新发明轮子。

我见过很多面向任务的 Jython 库。其中一些在较新版本的 WAS 中可用,其他已在 IBM developerWorks 上发布,一些库在 Web 上可用。对我来说,它们是另一个需要学习的 API,它们只对有限的任务集有用。我更喜欢寻找通用的 WAS 脚本工具/库。

编辑:这个问题是大型 WebSphere 自动化项目之前的研究的一部分。当时我问的图书馆不存在,因此我开始开发 WDR。你可以在这里找到它: http://wdr.github.io/WDR/ .

最佳答案

IBM developerWorks 有一个名为 wsadminlib 的非官方(因此不受支持)库。我从 stackoverflow 上的另一个问题中发现了这一点,由 BradT 回答: wsadmin-jython-restart-was-appserver 。该库是由一些 IBM 开发人员创建的,他们对 wsadmin jython 语法的看法与您一样。

由于这个库只是另一个 jython 文件,您可以将其导入到您自己的脚本中,并直接调用这些方法。这是启动应用服务器的示例,取自 wsadminlib-blog :

execfile('/tmp/wsadminlib.py')

servername = 'server1'
nodename = 'node1'

startServer(nodename,servername)

您可以在库 herehere 中找到更多信息。同样,这些链接在 BradT 对上述另一个问题的回答中。

关于websphere - 人性化的 WebSphere 脚本工具/库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13572055/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com