geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vamsavardhana Reddy" <c1vams...@gmail.com>
Subject Re: How to get memory statistics from a remote Geronimo runtime?
Date Tue, 04 Dec 2007 16:01:13 GMT
I don't know why the non heap memory is missing in the equations.  The
equations I gave are based what I observed by running the following code.

            MemoryMXBean memmxbean = ManagementFactory.getMemoryMXBean();
            Runtime rt = Runtime.getRuntime();
            MemoryUsage memUsage = memmxbean.getHeapMemoryUsage();
            System.err.println("init="+memUsage.getInit());
            System.err.println("max="+memUsage.getMax());
            System.err.println("used="+memUsage.getUsed());
            System.err.println("committed="+memUsage.getCommitted());
            System.err.println("free="+(memUsage.getCommitted()-
memUsage.getUsed()));
            System.err.println("TotalMemory = "+rt.totalMemory());
            System.err.println("MaxMemory = "+rt.maxMemory());
            System.err.println("FreeMemory = "+rt.freeMemory());
            System.err.println("Used="+(rt.totalMemory()-rt.freeMemory()));

++Vamsi

On Dec 4, 2007 8:57 PM, Anita Kulshreshtha <a_kulshre@yahoo.com> wrote:

>   IIUC,
>
> http://java.sun.com/j2se/1.5.0/docs/api/java/lang/management/MemoryMXBean.html
>   runtime values are sum of values from Heap and non heap memory. In
> other words you need to add contribution from non heap Memory to all 4
> equations.
>
> Thanks
> Anita
>
> --- Vamsavardhana Reddy <c1vamsi1c@gmail.com> wrote:
>
> > I don't know if it is necessary to add the statistics from Runtime.
> > Here is
> > the relationship I see between the stats from Runtime and those got
> > from
> > MemoryMXBean.getHeapMemoryUsage()
> >
> > Runtime.totalMemory() == MemoryUsage.getCommitted()
> > Runtime.maxMemory() == MemoryUsage.getMax()
> > Runtime.freeMemory() == MemoryUsage.getCommitted() -
> > MemoryUsage.getUsed()
> > Runtime.totalMemory() - Runtime.freeMemory() == MemoryUsage.getUsed()
> >
> > ++Vamsi
> >
> >
> > On Dec 4, 2007 6:51 PM, Anita Kulshreshtha <a_kulshre@yahoo.com>
> > wrote:
> >
> > >   If you are interested in usedMemory and maxMemory as given by
> > > Runtime, we could add that again. The JVM Stats give a rough
> > estimate
> > > of heap memory only.
> > >
> > > Thanks
> > > Anita
> > >
> > > --- Vamsavardhana Reddy <c1vamsi1c@gmail.com> wrote:
> > >
> > > > I am wondering if the following (which works) is the correct way
> > to
> > > > get
> > > > maxHeapSize and usedMemory from a remote Geronimo server.
> > > >
> > > > import
> > > > org.apache.geronimo.management.stats.BoundedRangeStatisticImpl;
> > > >
> > > >         Map map = new HashMap();
> > > >         map.put("jmx.remote.credentials", new String[] {user,
> > > > password});
> > > >         JMXServiceURL address = new JMXServiceURL(
> > > >                 "service:jmx:rmi:///jndi/rmi://"+host+ ":" + port
> > +
> > > > "/JMXConnector");
> > > >         JMXConnector jmxConnector =
> > > > JMXConnectorFactory.connect(address,
> > > > map);
> > > >         mbServerConnection =
> > jmxConnector.getMBeanServerConnection();
> > > >         objName = ObjectName.getInstance
> > > > ("geronimo:J2EEServer=geronimo,name=JVM,j2eeType=JVM");
> > > >         Stats stats = (Stats)
> > > > mbServerConnection.getAttribute(objName,
> > > > "stats");
> > > >          BoundedRangeStatisticImpl statistic =
> > > > (BoundedRangeStatisticImpl)
> > > > stats.getStatistic("HeapSize");
> > > >         long maxMemory = statistic.getUpperBound();
> > > >         long usedMemory = statistic.getCurrent();
> > > >
> > > > Is this ok?  Or, is there a better way?
> > > >
> > > > ++Vamsi
> > > >
> > >
> > >
> > >
> > >
> > >
> >
>
> ____________________________________________________________________________________
> > > Be a better pen pal.
> > > Text or chat with friends inside Yahoo! Mail. See how.
> > > http://overview.mail.yahoo.com/
> > >
> >
>
>
>
>
>  ____________________________________________________________________________________
> Be a better sports nut!  Let your teams follow you
> with Yahoo Mobile. Try it now.
> http://mobile.yahoo.com/sports;_ylt=At9_qDKvtAbMuh1G1SQtBI7ntAcJ
>

Mime
View raw message