We keep getting a warning on our stingrays about array elements.
TrafficScript exceeded the number of pre-allocated array elements. Consider increasing trafficscript!array_elements on the System > Global Settings page
Is there a way for us to identify what trafficscript is causing this and whether we have a problem or not, or should we just do as it suggests and increase the size of trafficscript!array_elements. What are the implications of doing this?
Cheers,
Andrew
Solved! Go to Solution.
It's pretty harmless - it was changed from WARN to INFO in version 9.1. There's basically no impact of increasing trafficscript!array_elements far enough to stop the error happening - when the message happens that's what STM does internally.
The default value of trafficscript!array_elements can be considered a safe guard and adjusted accordingly. In addition to custom scripts, the error can also be attributed to “internal” functions of Traffic Manager that use Traffic Script array elements.
As always, I recommend a check the health of the system resources
(i.e. memory and error logs) after changes to identify any potential problems. Disclaimer out of the way, I have increased the value a number of times with little implications. (one time the lager array required me to increase the "trafficscript!memory_warning:" )
I suppose one problem I have is that I have very little in the way of diagnostics for identifying where any problem may lie. There doesn't appear to be a way for me to identify what is using the array elements or how it is changing over time, so I can't identify whether some errant trafficscript that I've written is at fault or if it is just normal (increasing) usage of the traffic managers. Is there a way to get more information out?
One other thing I forgot to mention. What is the impact of this warning? Does it stop things from working?
It's pretty harmless - it was changed from WARN to INFO in version 9.1. There's basically no impact of increasing trafficscript!array_elements far enough to stop the error happening - when the message happens that's what STM does internally.