One of blog follower(Mr. Venkatesh Durai) asked me for the same, A script works for managed server wise display for the Datasource performance monitoring with WLST. It was already discussed by Srikanth Sonti and Vijay Bheemaneni in Oracle WLST ORKUT forums.
Orkut link
Here we go with the latest script, HTH scriptors...
#======================================================== # ScriptFile: DSMonitor.py # Author : Pavan Devarakonda # Purpose : Multi Datasource monitoring with Server wise #======================================================== urldict={} def conn(): try: print 'Connecting to Admin server....' connect(username, password, adminurl) except: print 'Admin Server NOT in RUNNING state....' def initialize(): conn() try: serverlist=['app01','app02','app03'...] for s in serverlist: cd("/Servers/"+s) urldict[s]='t3://'+get('ListenAddress')+':'+str(get('ListenPort')) JDBCStat() except: print 'issue in accessing JDBC Pool' def printline(): print '------------------------------------------------------------' def printHeadr(): print 'JDBC CONNECTION POOLS STATISTICS' print ' ' print 'Name Max Active Active WaitSecs Waiting State' print ' capacity Current HighCnt HighCnt Count' printline() def getJDBCDetails(): pname=get("Name") pmcapacity=get("CurrCapacityHighCount") paccc = get("ActiveConnectionsCurrentCount") pachc = get("ActiveConnectionsHighCount") pwshc = get("WaitSecondsHighCount") pwfccc = get("WaitingForConnectionCurrentCount") pstate = get("State") print '%10s %7d %7d %7d %7d %7d %10s' % (pname,pmcapacity,paccc,pachc, pwshc,pwfccc,pstate) print ' ' def JDBCStat(): Ks = urldict.keys() Ks.sort() printHeadr() for s in Ks: try: connect(user, passwd,urldict[s]) serverRuntime() cd('JDBCServiceRuntime/'+s+'/JDBCDataSourceRuntimeMBeans/') print ' '+s printline() DSlist=ls(returnMap='true') for ds in DSlist: cd(ds) getJDBCDetails() cd('..') except: #pass print 'Exception' quit() def quit(): print ' Hit any key to Re-RUN this script ...' Ans = raw_input("Are you sure Quit from WLST... (y/n)") if (Ans == 'y'): disconnect() stopRedirect() else: JDBCStat() if __name__== "main": redirect('./logs/JDBCCntwlst.log', 'false') initialize() print 'done'
How to run this Script??
Recently one of my blog follower wrote to me " What is the right way for running this monitoring scripts?". Here I am editing my blogs for more readable and flexible for novice WLA.
You need to update with your environment details at line 5, 11, 14. Create this script in a separate folder where you should maintain logs folder, this is expected by line 67.
To run the above script you need to use regular WLST invoking command as follows:
prompt> java weblogic.WLST DSMonitor.py
This is universal way of running WLST I mean on UNIX flavours, on Windows, on Mac OS too.