Forum Discussion

Asura2003's avatar
Asura2003
Icon for Altostratus rankAltostratus
Jul 15, 2025

F5 ASM XML processing - policy name.

Hello,

we have an error message in logs:

ASM out of memory error: event code X89 Exceeded maximum memory assigned for XML processing

we have already increased both variables   total_xml_memory and additional_xml_memory_in_mb to 4GB but they still appear.

 

What i wanted to ask if its possible to identify which ASM policy generates these logs? Or which policy is responsible for the most of xml memory usage?

 

Is it possible to create an irule that will check this and assign custom violation with policy name (and request details) that raised this violation regarding xml memory?

 

Because as it is now we would have to further increase additional xml memory variable and maybe its better to troubleshoot why is it getting exceeded in the first place?

5 Replies

  • VGF5's avatar
    VGF5
    Icon for Cumulonimbus rankCumulonimbus

    Hi Asura2003​ 

    What is your current version ? And how many policies do you have ?

    Following articles will help you.

    K10803: Customizing the amount of memory allocated to the BIG-IP ASM XML processing engine

    K22526837: Error Message: ASM out of memory error: event code X242/X260 Exceeded maximum memory assigned for XML/JSON processing

    Use "tmctl asm_memory_util_stats" to monitor real-time XML memory usage.

     

  • Version 16.1.4 and around 60 policies. We are going to upgrade to 17.5.1 in a few weeks.

    • VGF5's avatar
      VGF5
      Icon for Cumulonimbus rankCumulonimbus

      Thanks for the update. Upgrade is always the best option. Since you're using 60 policies, you're well below the known threshold (255+) where policy count alone could lead to XML memory exhaustion (K16221342).

      If your system has enough available RAM, consider increasing the additional_xml_memory_in_mb value, up to 64 GB if needed. Just be sure to monitor overall memory usage to avoid impacting other system processes. Refer K10803.

      Also, take a look at your XML profiles and schemas, simplify wherever possible and get rid of any that aren’t being used.

      If these doesn't work, I would recommend to contact the F5 Support.

  • Hello,

    thans for your answer but its not exactly what i asked for. I know that i can increase available ram for XML processing with both of these variable and related articles. 

     

    I asked if there is a way to check which WAF policy or even which requests trigger this log message (error)? 

    Maybe its possible to check which policy is consuming the most of the XML processing memory?

    • VGF5's avatar
      VGF5
      Icon for Cumulonimbus rankCumulonimbus

      ASM does not provide a built-in way to directly identify which specific WAF policy or request is consuming the most XML processing memory, nor does it log which policy triggered the XML/JSON memory exhaustion error. However, you can search the logs for large requests that failed XML parsing:

      zgrep -i 'XML parser' /var/log/asm* | awk '{print $7,$9}' | sort -nr | head