Forum Discussion
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
Cumulonimbus
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.
- Asura2003
Altostratus
Version 16.1.4 and around 60 policies. We are going to upgrade to 17.5.1 in a few weeks.
- VGF5
Cumulonimbus
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.
- Asura2003
Altostratus
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
Cumulonimbus
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
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com