Forum Discussion

Mick_O_Rourke_6's avatar
Mick_O_Rourke_6
Icon for Nimbostratus rankNimbostratus
Jul 17, 2012

Monitoring ASM memory usage

Hi DevCentral,

 

 

- We hit a major issue recently where our ASM ran out of memory;

 

 

- The result was a major Sev1 where the whole boxed slowed to a crawl, during the event CPU and memory all reported as fine. All we could do was a 'shutdown now -r' and allow the services to failover.

 

 

- While we are currently monitoring the generic SNMP MIBS that report on overall memory usage this doesn't provide a detailed view on the ASM to allow us to monitor the ASMs memory capacity.

 

 

- We trucked the issue over to F5 support who advised us the cause of the Sev1 was an ASM memory issue.

 

- What they have not been able to tell us is how we can monitor or check logs for the usage in any way shape or form.

 

- This really surprised me, surely this is a common thing people monitor, it makes a hell of a lot of sense to be monitoring this as the memory is pre allocated and limited.

 

- The feedback from F5 at present is that they 'think' we need to write a script to get the usage of the main ASM process ie. the 'bd' process and then config a custom SNMP MIB\script\trap.

 

 

Has anyone had any experince in monitor ASM memory usage before and do you have any scripts, suggestions, or anything at all that could point us in the right direction or help.

 

 

Cheers

 

 

Mick

 

 

 

  • do you know, why is running out of memory? Is it the ASM itself or i.e. the xml enforcer? we have experience with that, too ;-)

     

    if it is the ASM, you could change the provisioning by a custom memory setting. if it is a sub process like xml enforcer, it can be changed by the internal parameter "total_xml_memory".

     

    The bd process is the main process for the ASM. There should be a possibility, to get the memory allocation of every process via snmp. For this, you need the process id and hrSWRunPerfMem

     

    i.e. 1.3.6.1.2.1.25.5.1.1.2.$PID - if your PID is 9002 --> snmpget 1.3.6.1.2.1.25.5.1.1.2.9002

     

    the problem is, the pid isn't static. So you have to change the snmpget with every restart of the process. for a main process, it should only happen with a system restart.

     

  • do you know, why is running out of memory? Is it the ASM itself or i.e. the xml enforcer? we have experience with that, too ;-)

     

    if it is the ASM, you could change the provisioning by a custom memory setting. if it is a sub process like xml enforcer, it can be changed by the internal parameter "total_xml_memory".

     

    The bd process is the main process for the ASM. There should be a possibility, to get the memory allocation of every process via snmp. For this, you need the process id and hrSWRunPerfMem

     

    i.e. 1.3.6.1.2.1.25.5.1.1.2.$PID - if your PID is 9002 --> snmpget 1.3.6.1.2.1.25.5.1.1.2.9002

     

    the problem is, the pid isn't static. So you have to change the snmpget with every restart of the process. for a main process, it should only happen with a system restart.

     

    • Torti's avatar
      Torti
      Icon for Altostratus rankAltostratus
      process name: .1.3.6.1.2.1.25.4.2.1.2.$PID