Score:0

Lightweight Linux tools for on-demand performance monitoring during load testing?

us flag

I'm tasked with testing out ProxySQL on a couple of Tomcat test servers, comparing its performance and resource utilization with the current Apache DBCP connection pooling. I've got a rough load testing plan in place, but I have near zero experience with monitoring and gathering/comparing system-level performance metrics (CPU, memory, disk, network, etc.)

My load testing will involve an Ansible playbook that does various preparatory tasks, triggers the load testing scripts, and finally cleans up after itself. I'd like to add "starts and stops the gathering of performance metrics before and after the load test, respectively", but I'm at a loss as to what tools I should look into.

The optimal solution, in my view, would look something like this:

  • Runs locally in the background on the Tomcat boxes
  • Simple configuration
  • Monitoring sessions can be started and stopped on demand
  • High resolution (metrics gathered once per second or even more frequently, if need be)
  • Results of monitoring runs easily readable into some kind of graphical tool for comparing different load test runs.

Given these specs, what kind of options am I looking at, both for the monitoring task itself and the graphical tool with which to examine them?

JK Laiho avatar
us flag
Addendum: the use of monitoring daemons that are always running is acceptable, as long as it's possible to create, store and later view and compare some kind of monitoring "sessions", i.e. all the metrics that the daemon collected over, say, multiple 5-minute load testing periods.
Score:1
cn flag
  1. Some essential information can be obtained from OperatingSystemMXBean using JConsole or equivalent, you won't have to install anything
  2. The most lightweight tool of will be sar
  3. You can take a look at Sigar which has Java API so you can create a web app which will collect and display the metrics of your choice. It's also used under the hood of PerfMon Plugin for Apache JMeter load testing tool
  4. If you prefer more or less ready solution take a look at Monitorix
JK Laiho avatar
us flag
`sar` and Monitorix in particular look very intriguing. Thank you.
Score:0
cn flag

I don't know if it checks all the boxes, but have a look at JMeter.

JK Laiho avatar
us flag
I just edited to add a clarification that I'm looking for tools to monitor system-level metrics. Still, JMeter looks like an interesting load-testing tool for sure.
Score:0
cn flag

If you have something able to parse the output, the following works fine and is VERY light :

head -v -n 8 /proc/meminfo; head -v -n 2 /proc/stat /proc/version /proc/uptime /proc/loadavg /proc/sys/fs/file-nr /proc/sys/kernel/hostname; tail -v -n 16 /proc/net/dev

You just need to exec it each seconds

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.