我需要对一组 WebSphere 应用程序服务器的“事务服务”部分进行一些更改。我希望使用 wsadmin 编写脚本。
我要更改的属性之一是“事务日志目录”。我尝试了以下教程:
问题是我的recoveryLog
对象总是空的(Jython 值为None
)是否有另一种方法可以更改此值?
与此问题相关,是否有可以使用 WAS Web 控制台编辑但无法使用 wsadmin 编辑的属性?我想更改更多“深度嵌套”的属性,并且我想确保我没有浪费我的时间。
我需要对一组 WebSphere 应用程序服务器的“事务服务”部分进行一些更改。我希望使用 wsadmin 编写脚本。
我要更改的属性之一是“事务日志目录”。我尝试了以下教程:
问题是我的recoveryLog
对象总是空的(Jython 值为None
)是否有另一种方法可以更改此值?
与此问题相关,是否有可以使用 WAS Web 控制台编辑但无法使用 wsadmin 编辑的属性?我想更改更多“深度嵌套”的属性,并且我想确保我没有浪费我的时间。
我能够使用以下命令更改日志目录:
serverEntryId = AdminConfig.getid("/ServerEntry:server1")
recoveryLog = AdminConfig.showAttribute(serverEntryId, "recoveryLog")
AdminConfig.modify(recoveryLog, '[[transactionLogDirectory c:/mylog]]')
AdminConfig.save()
关于您的第二个问题-您可以通过 Web 控制台执行的所有操作都可以通过 wsadmin 脚本执行。
Gas 的回答是正确的,假设您首先使用他评论中的说明创建了 trans 日志。尽管使用了出色的 WDR 库,但我以稍微不同的方式解决了这个问题。我是这样做的:
mySeverEntry = listConfigObjects("ServerEntry", "*TomsServer*")[0]
mySeverEntry.create("RecoveryLog",
transactionLogDirectory="/some/dir1"),
compensationLogDirectory="/some/dir2"),
compensationLogFileSize="5")
save()
sync()
如果您正在寻找一种更简洁、pythonic 的方式来编写 wsadmin 更改的脚本,我强烈推荐 WDR 库。