Weblogic Model // JMX: need to monitor "committedVirtualMemorySize"

Hi,

i'm searching for the attribute "CommittedVirtualMemorySize" in the weblogic model but can't find it.

--> getAttribute(operatingSystemMXBean, "CommittedVirtualMemorySize")

Maybe there is another identifier available. I need to monitor assigned native memory.

From the bea console i have the following columns inside a jmx-weblogic_OperatingSystem table:

  • Time
  • OpenFileDescriptorCount
  • MaxFileDescriptorCount 
  • ProcessCpuTime 
  • SystemLoadAverage
  • AvailableProcessors
  • CommittedVirtualMemorySize
  • TotalPhysicalMemorySize
  • FreePhysicalMemorySize
  • TotalSwapSpaceSize FreeSwapSpaceSize

In the Foglight Weblogic Model i can find something like:

  • "UsedPhysicalMemory:java.lang.Long::

   The amount (in bytes) of physical memory that is currently being used on the host computer.

   The value describes the memory that is being used by all processes on the computer, not just by the Virtual Machine."

  • "TotalPhysicalMemory:java.lang.Long::

   The amount (in bytes) of physical memory on the host computer.

   The value does not include memory that an operating system makes available through swap space on a disk or other types of virtual memory."

  • "UsedHeap:java.lang.Long:: The amount (in bytes) of Java heap memory that is currently being used by the Virtual Machine."

How can i identify the value for "CommittedVirtualMemorySize" and where do i find it in the JMX cartridge ?

--

Regards

Bernhard

  • The out of the box template Models we have with the JMX cartridge  show important information BUT not  all the information that is there in the JMX tree. When you create a JMX agent for weblogic you can copy the Weblogic model to a new model that the agent use and then edit your new model and add additional JMX Mbeans and attributes that are visible in the JMX tree.

    Golan

  • Hi Golan,

    i've searched in my exported weblogic model.

    Does an export contain a full JMX Mbean tree or only the activated once ?

    --

    Regards

    Bernhard

  • What you see in the exported weblogic model is only the information that we are trying to collect, not the full JMX Mbean tree.

    When you edit the server model you can refresh the list of mbeans based on what is visible from the server.

    Golan

  • When you are looking at the JVM information there is an operating system tab, do you see it and the information in it? We may get this information out of the box from the JVM MXBean

    committed.jpg

    Golan

  • Hello Golan,

    thank you for your hints !

    when i have a look at one of our weblogic environments i miss these charts:

    Bildschirmfoto 2012-07-11 um 22.12.11.png

    Does it depend on the weblogic model ?

    --

    Regards

    Bernhard

  • Can you please check if this KB article corrects the problem?

    https://support.quest.com/Search/SolutionDetail.aspx?id=SOL73510&category=Solutions&SKB=1

    Solution SOL73510

    return

    Title

    JMX agent not showing jvm data

    Problem Description

    JMX agent not showing jvm data

    Cause

    Resolution

    Oracle WebLogic normally uses its own MBean Server which is separate from the Platform MBean Server and only provides remote access to its own MBean Server. As a
    result, the JMX agent is unable to collect JVM data.

    How to enable this:
    Oracle WebLogic provides an option in the Domain -> General -> Advanced configuration page, which forces WebLogic to use the Platform MBean Server for its
    own MBeans instead of a separate MBean Server. This option is turned on by default by WebLogic 10.3.3 and higher. Versions prior to 10.3.3 need to be changed. Enabling this option on allows the JMX agent to collect both WebLogic MBean data as well JVM data.

    Additional Information

    For more information you can read Oracle Weblogic documentation

    http://download.oracle.com/docs/cd/E12840_01/wls/docs103/jmx/understandWLS.html#wp1122400

    Golan

  • nice catch,

    we have several weblogic 10.x and 11g environments with

    Bildschirmfoto 2012-07-11 um 23.35.02.png

    where i have

    Bildschirmfoto 2012-07-11 um 23.38.27.png

    and some servers where the Mbean Server is completely disabled with no chart available.

    But my final question:

    Is "CommittedVirtualMemorySize" the same like "Heap used and Capacity" ?

    I'm confused about the different charts of the above transcipt e.g. "Heap used and committed" as well as "Heap Usage"

    or "Heap used and Capacity" in "Custom Applications Monitor" --> "Mbean Server".

    Does the flow chart kind vary with setting of the weblogic "Mbean Server" switch ?

    --

    Regards

    Bernhard

  • Checking Oracle docs it looks like heap info and CommittedVirtualMemorySize are coming from different MBeans, if I read this correctly it looks like one is looking at the JVM itself while the other is looking at things from the OS standpoint.

    http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/management/MemoryMXBean.html

    is for management interface for the memory system of the Java virtual machine.

    http://docs.oracle.com/javase/6/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html

    is for Platform-specific management interface for the operating system on which the Java virtual machine is running.

    Golan

  • In reply to benny:

    Java Memory..

    1. There is no manual way of doing garbage collection in Java.
    2. Java Heap is divided into three generation for the sake of garbage collection. These are the young generation, tenured or old generation, and Perm area.
    3. New objects are created in the young generation and subsequently moved to the old generation.
    4. String pool is created in Perm area of Heap, Garbage collection can occur in perm space but depends on upon JVM to JVM.
    5. Minor garbage collection is used to move an object from Eden space to Survivor 1 and Survivor 2 space, and Major collection is used to move an object from young to tenured generation.
    6. Whenever Major garbage collection occurs application, threads stops during that period which will reduce application’s performance and throughput.

    More about....Java Memory Management

    http://net-informations.com/java/cjava/memory.htm

    Crow

     

  • The esteem does exclude memory that a working framework influences accessible through swap to space on a plate or different sorts of virtual memory. I have to make an inferred metric which sorts however all machines with a particular ordercollegepapers.com naming tradition and after that aggregates up their aggregate diskWrites.