skip to main | skip to sidebar

Java Programs and Examples with Output

Pages

▼
 
  • RSS
  • Twitter
Wednesday, September 19, 2012

CONNECTION POOL MOINTORING

Posted by Admin at 8:45 AM – 0 comments
 

this tool helps to mointor connection pool during performance testing




import java.io.*;

import java.util.Iterator;

import java.util.ResourceBundle;



import java.util.Set;

import javax.naming.Context;

import weblogic.jndi.Environment;

import weblogic.management.MBeanHome;

import weblogic.management.configuration.ExecuteQueueMBean;

import weblogic.management.runtime.JDBCConnectionPoolRuntimeMBean;

import weblogic.management.runtime.ExecuteQueueRuntimeMBean;



import weblogic.management.WebLogicMBean;

import weblogic.management.RemoteMBeanServer;

import weblogic.management.runtime.JMSDestinationRuntimeMBean;

import weblogic.management.runtime.JVMRuntimeMBean;



public class Performance_Monitor

{



    public Performance_Monitor()

    {

    }



    public static void main(String args[])

    {

        Object obj = null;

        try

        {







            Object obj1 = null;

            Object obj2 = null;

            int i = 0;

            Set set = null;

            Set set1 = null;

            Set set2 = null;

            Set set3 = null;

            Object obj3 = null;

            Object obj4 = null;

            System.out.println("*********");





    String url="";

    String domain="";

       String username="";

                String password="";

                String poolname1="";

                 String poolname2="";

                String ExecuteQueuename1="";

                String ExecuteQueuename2="";

                String poolcheck="";

                String Threadcheck="";

                String Heapcheck="";

























                           ResourceBundle prop =   null;



                           prop           =   ResourceBundle.getBundle("Performance");

                           url=prop.getString("url").trim();

                                    username=prop.getString("username").trim();

                                   password=prop.getString("password").trim();

                          domain = prop.getString("domain").trim();

                          poolname1=  prop.getString("poolname1").trim();

                          poolname2=  prop.getString("poolname2").trim();

                          ExecuteQueuename1= prop.getString("ExecuteThreadname1").trim();

                          ExecuteQueuename2= prop.getString("ExecuteThreadname2").trim();

                          poolcheck=  prop.getString("poolcheck").trim();

                          Threadcheck=  prop.getString("Threadcheck").trim();

                          Heapcheck=  prop.getString("Heapcheck").trim();















              try

            {







                Environment environment = new Environment();

                environment.setProviderUrl(url);

                environment.setSecurityPrincipal(username);

                environment.setSecurityCredentials(password);

                Context context = environment.getInitialContext();

                MBeanHome mbeanhome = (MBeanHome)context.lookup("weblogic.management.adminhome");

                set1 = mbeanhome.getMBeansByType("JDBCConnectionPoolRuntime");



                set2 = mbeanhome.getMBeansByType("ExecuteQueueRuntime");

                //Set mbeanSet = home.getMBeansByType("JMSDestinationRuntime");

                set3 = mbeanhome.getMBeansByType("JVMRuntime");



















            }

            catch(Exception exception1)

            {

                System.out.println("Exception caught: 2 " + exception1);

            }

            String s4 = null;

            File file = new File("ExQ.txt");

            FileWriter filewriter = new FileWriter(file, true);





            System.out.println("Monitoring  pool.......");

            do

            {



                                  Iterator iterator1 = set1.iterator();



    Iterator iterator2 = set2.iterator();

    Iterator iterator3 = set3.iterator();

                try

                {

                  do

                    {





            if(Threadcheck.equals("Y") || Threadcheck.equals("y"))

             {               // for(int k=0;k<7;k++)



                         while(iterator2.hasNext())



              {

        //if(!iterator2.hasNext())

        //break;



        ExecuteQueueRuntimeMBean executequeueruntimembean = (ExecuteQueueRuntimeMBean)iterator2.next();

             if(executequeueruntimembean.getName().equals("weblogic.kernel.Default")||executequeueruntimembean.getName().equals(ExecuteQueuename1)||executequeueruntimembean.getName().equals(ExecuteQueuename2) )



                                {



                                    System.out.println("\n"+executequeueruntimembean.getParent().toString()+" "+executequeueruntimembean.getName()+" "+executequeueruntimembean.getExecuteThreadCurrentIdleCount());





                                    }

              }

      }



      /*if(Heapcheck.equals("Y")||Heapcheck.equals("y"))

          {

            //for(int j=0;j<3;j++)



            while(iterator3.hasNext())

            {

         //if(!iterator3.hasNext())

        //break;

        JVMRuntimeMBean jvmruntimembean= (JVMRuntimeMBean)iterator3.next();





         System.out.println("\n"+jvmruntimembean.getName()+"          "+"Free:"+jvmruntimembean.getHeapFreeCurrent() + "            " +"current:       "+ jvmruntimembean.getHeapSizeCurrent() );

         }



       }*/



      /*if(poolcheck.equals("Y")||poolcheck.equals("y"))

       {

        while(iterator1.hasNext())

                               //if(!iterator1.hasNext())

                                  // break;

                                  {



                               JDBCConnectionPoolRuntimeMBean jdbcconnectionpoolruntimembean = (JDBCConnectionPoolRuntimeMBean)iterator1.next();

                               if(jdbcconnectionpoolruntimembean.getName().equals(poolname1)||jdbcconnectionpoolruntimembean.getName().equals(poolname2) )

                               {



                                   System.out.println("\n"+jdbcconnectionpoolruntimembean.getName()+" "+"currentcount="+jdbcconnectionpoolruntimembean.getActiveConnectionsCurrentCount()+"  and   "+"highcount="+jdbcconnectionpoolruntimembean.getActiveConnectionsHighCount()+"\n");

                                    System.out.println("\n-----------------------------------------------------------------------");







          }}

                    }*/









                    } while(true);



                }

                catch(Exception exception2)

                {

                    System.out.println("Exception caught: 3 " + exception2);

                }

                try

                    {

                        Thread.sleep(500L);

                    }

                    catch(InterruptedException interruptedexception)

                    {

                        System.out.println("Interrupted Exception...." + interruptedexception);

                                 }





                    //filewriter.write("\n--------------------------------------------------------------------------------");



                            } while(true);

        }

        catch(Exception exception)

        {

            System.out.println("Interrupted Exception...." + exception);

        }

    }

}

Leave a Reply

Newer Post Older Post
Subscribe to: Post Comments ( Atom )
  • Popular
  • Recent
  • Archives
Powered by Blogger.
 
 
 
© 2011 Java Programs and Examples with Output | Designs by Web2feel & Fab Themes

Bloggerized by DheTemplate.com - Main Blogger