rss
SOATUBE
Oracle
Custom Search SOABYTE here

Friday, May 24, 2013

WLST script to change Composites properties(adapter.jms.receive.threads/adapter.jms.receive.timeout)

WLST script to change Composites properties(adapter.jms.receive.threads/adapter.jms.receive.timeout)

#domain.properties file referenced in WLST script

#*****************************************************
# Environment details
#*****************************************************
ADMIN_USERNAME = weblogic
ADMIN_PASSWORD = welcome1
ADMIN_URL = t3://localhost:7001

##*****************************************************
## JMS Receive Threads/Timeout Configurations         *
##*****************************************************

CompositeNames = CompositeA,CompositeB,CompositeC,CompositeD,CompositeE,CompositeF,CompositeG,CompositeH

SCAService.CompositeA = SCAServiceNameA
SCAService.CompositeB = SCAServiceNameB
SCAService.CompositeC = SCAServiceNameC
SCAService.CompositeD = SCAServiceNameD
SCAService.CompositeE = SCAServiceNameE
SCAService.CompositeF = SCAServiceNameF
SCAService.CompositeG = SCAServiceNameG
SCAService.CompositeH = SCAServiceNameH

adapter.jms.receive.timeout.CompositeA = 1000
adapter.jms.receive.threads.CompositeA = 1
adapter.jms.receive.timeout.CompositeB = 1000
adapter.jms.receive.threads.CompositeB = 5
adapter.jms.receive.timeout.CompositeC = 1000
adapter.jms.receive.threads.CompositeC = 10
adapter.jms.receive.timeout.CompositeD = 1000
adapter.jms.receive.threads.CompositeD = 10
adapter.jms.receive.timeout.CompositeE = 1000
adapter.jms.receive.threads.CompositeE = 10
adapter.jms.receive.timeout.CompositeF = 1000
adapter.jms.receive.threads.CompositeF = 10
adapter.jms.receive.timeout.CompositeG = 1000
adapter.jms.receive.threads.CompositeG = 5
adapter.jms.receive.timeout.CompositeH = 1000
adapter.jms.receive.threads.CompositeH = 10

########################################################################################
# AIA ConsumerJMSThreadsConfigProperties Automation WLST Script                        #
# @Team Fusion (soabyte@gmail.com)                                                     #
# Restart the servers after running this script.                                       #
#Do not change the description                                                         #
#domain.properties file will have the composite names(comma separated),                #
#SCAServiceNames and adapter.jms.receive.threads/adapter.jms.receive.timeout values    #
#Replace CompositeA with the composite name and SCAServiceNameA with SCA service name  #
#This script can be modified to automate changing other properties                     #
########################################################################################
#Running the script                                                                    #
########################################################################################
#WL_HOME\server\bin\setWLSEnv.cmd or                                                   #
#source $WL_HOME/server/bin/setWLSEnv.sh                                               #
#java weblogic.WLST Folder_Loc/changeConsumerJMSThreadsConfigProperties.py             #
########################################################################################
from java.io import FileInputStream
import java.lang
import string
from javax.jms import TextMessage
from javax.jms import ObjectMessage
import sys

#read properties file
propInputStream = FileInputStream("domain.properties");
configProps = Properties();
configProps.load(propInputStream);


adminusername = configProps.get('ADMIN_USERNAME');
adminpassword = configProps.get('ADMIN_PASSWORD');
adminurl = configProps.get('ADMIN_URL');
connect(adminusername, adminpassword, adminurl)
domainName=cmo.getName();
serverList = cmo.getServers();
server1=serverList[1].getName();




def __changeConsumerJMSThreadsConfigProperties():
 domainRuntime();
 CompositeNames = configProps.get('CompositeNames')
 CompositeName = String(CompositeNames).split(",")
 soaBean = ObjectName('oracle.soa.config:Location='+server1+',name=soa-infra,j2eeType=CompositeLifecycleConfig,Application=soa-infra')
 composites = mbs.getAttribute(soaBean, 'DeployedComposites')
 for composite in composites:
  x = str(composite).split(",");
  z = x[13].split("=");
  a = z[2];
  X = String(a).split("/")
  partitionName = X[0];
  Y = (X[1].split("!"))
  processName = Y[0];
  for i in CompositeName:
   SCAServiceName = configProps.get('SCAService.'+i)
   JMSAdapterReceiveThreadsTimeout = configProps.get('adapter.jms.receive.timeout.'+i)
   JMSAdapterReceiveThreads = configProps.get('adapter.jms.receive.threads.'+i)
   if processName == i:
    Z = Y[1].split("*")
    revision = Z[0];
    labelName = Z[1];
    SCACompositeConfigObject = ObjectName('oracle.soa.config:SCAComposite.SCAService='+SCAServiceName+',name=AdapterBinding,revision='+revision+',partition='+partitionName+',SCAComposite="'+processName+'",Location='+server1+',label='+labelName+',j2eeType=SCAComposite.SCAService.SCABinding,Application=soa-infra')
    params1 = ['adapter.jms.receive.timeout',JMSAdapterReceiveThreadsTimeout]
    params2 = ['adapter.jms.receive.threads',JMSAdapterReceiveThreads]
    params3 = ['adapter.jms.receive.timeout']
    params4 = ['adapter.jms.receive.threads']
    sign = ['java.lang.String','java.lang.String']
    sign1 = ['java.lang.String']
    print 'Deleting JMSAdapterReceiveThreadsTimeout for Composite Name :  '+processName
    mbs.invoke(SCACompositeConfigObject, 'removeProperty', params3, sign1)
    print 'Deleting JMSAdapterReceiveThreadsCount for Composite Name :  '+processName
    mbs.invoke(SCACompositeConfigObject, 'removeProperty', params4, sign1)
    print 'Setting JMSAdapterReceiveThreadsTimeout for Composite Name :  '+processName
    mbs.invoke(SCACompositeConfigObject, 'setStringProperty', params1, sign)
    print 'Setting JMSAdapterReceiveThreadsCount for Composite Name   :  '+processName
    mbs.invoke(SCACompositeConfigObject, 'setStringProperty', params2, sign)

 
# MAIN

#****************************************************************************

#

# Calling all the Methods here

print(' ————————– ')

print('Starting the changes')

print('#########################################################################################################################')

print 'Do you want to tune ConsumerJMSThreadsConfigProperties'

input = raw_input("Press y to PROCEED or press n to SKIP ===================================================>                          ");

if input == 'y':
 __changeConsumerJMSThreadsConfigProperties()
else:
 exit();



print ('##########################################################################################################################')

print(' ————————– ')

print 'Changes Completed succesfully.You can restart the servers now'

0 comments:

Post a Comment

 
Blogger Profile