When taking a snapshot of the variable values in a specific error or exception, OverOps records variable values 10 levels deep into the heap. The recording mechanism is based on a knapsack algorithm that balances the number of values recorded with minimizing the effect the snapshot has on the application performance. This mechanism is called 'The Cart', since it operates like a supermarket cart - it collects data until it is full.
The out-of-the-box cart size is designed to fit the needs of our clients: adding rich information on any error and exception, while minimizing the effect on application performance.
However, cart size can be increased for advanced users that require expanding the information collected by the Agent.
To increase the cart size, use the following JVM argument when starting the application:
<recording size> refers to the amount of data collected and can accept values from 0.1 - 4, where “1” represents the default algorithm set by OverOps.
Adding lower values causes the Agent to collect less data and can improve the application’s performance, while entering values higher than 1 tells the Agent to collect more data, while impacting application performance.
For example, using -Dtakipi.cart.factor=2 will increase cart size by 2x. This allows the Agent to collect twice the amount of data, but can affect application performance.
NOTE: Manually setting the cart size is an advanced feature that will impact application performance, potentially causing application slowdowns.