since we are afflicted by sneaking degradation within our web application we made the decision to watch our application performance and measure individual actions.

for instance we'll appraise the amount of each request, the amount of individual actions like editing a person or creating a scheduled appointment, hunting for a contract. generally the database may be the bottleneck of these actions.

i expect the culminated data is going to be quite large, since we'll gather 1-5 individual actions per request.

obviously it might be nonsense to place each an every element towards the database, because this would decelerate every request much more.

exactly what is a good technique for storing and evaluating individuals per-request data. i figured about getting a worldwide Queue object that is appended along with a seperate thread that empties the queue and handles the persistent storage/file. but where you can store such data? what are the prebuilt tools for this type of visualization?

we use java, spring, mixed hibernate+jdbc+pl/sql, oracle.

the question ought to be language-agnostic, though.

edit: the measurement is going to be drawn in production on the large time period.

It appears much like your archive strategy is going to be a minimum of partly determined by the scope of the tests:

  • How lengthy do you want to collect performance data?
  • What exactly are you attempting to demonstrate? Performance enhancements with time? Enhancements connected with specific changes? (Like perf issues for any specific group of releases)

For visualization tools, I have found stand out to become pretty helpful for promising small to moderate levels of data.