如何使用 WLST 获取 weblogic 托管服务器的 IP 地址

How to get IP address of weblogic managed server using WLST

我有一个 weblogic 管理服务器和托管服务器。我能够使用 wlst 从管理服务器获取托管服务器名称、其堆利用率等。现在我想知道是否有任何方法可以使用 wlst 脚本获取托管服务器的 IP 地址。

我正在使用 WLST 脚本

from datetime import datetime
from java.util import Date
from java.text import SimpleDateFormat
import os
import smtplib
import time
from java.io import File
from java.io import FileOutputStream
connect('weblogic','weblogic','t3://192.168.30.100:5011')
servers = domainRuntimeService.getServerRuntimes();

for server in servers:
        free    = int(server.getJVMRuntime().getHeapFreeCurrent())/(1024*1024)
        freePct = int(server.getJVMRuntime().getHeapFreePercent())
        #current = int(server.getJVMRuntime().getHeapSizeCurrent())/(1024*1024)
        #max     = int(server.getJVMRuntime().getHeapSizeMax())/(1024*1024)
        #print (server.getName(),current,free,max,freePct)
        print (server.getName(),freePct)
        print (server.getName(),free)
        heapfreepct = "/usr/local/bin/aws cloudwatch put-metric-data --metric-name 'Weblogic_heap_percent' --value '"+str(freePct)+"' --unit 'Percent' --namespace System/weblogic --dimensions InstanceId=$instanceid,weblogicInstance='"+str(server.getName())+"';"
        os.system(heapfreepct)
        heapsizefree = "/usr/local/bin/aws cloudwatch put-metric-data --metric-name 'Weblogic_heap_free' --value '"+str(free)+"' --unit 'Megabytes' --namespace System/weblogic --dimensions InstanceId=$instanceid,weblogicInstance='"+str(server.getName())+"';"
        os.system(heapsizefree)
disconnect()
exit()

试试这个:

server.getListenAddress()