Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Trying to evaluate the requirements of my Web application, I wanted to put it under load and at the same time check how it scales on memory and CPU.

But running AB/HTTPerf and htop/"pidstat -C" in a way that produces a coherent log file is quite challenging. Further, those monitoring tools consume a lot of CPU resources, injecting a bias in the results.

The best match for the task I could find is an open-source wrapper for ApacheBench:

http://dsec.com/source/ab.c.txt

Do you know about other open-source tools that do it all in one single step?

share|improve this question
    
possible duplicate of Tools for load-testing HTTP servers? –  mailq Sep 29 '11 at 20:53
    
I too want to see such a tool (and may yet create it). In the past I’ve recorded dstat output in a csv file, then stitched it together in a spreadsheet with httperf data. That’s way too time consuming though. –  Michael Kropat Dec 16 '11 at 23:00

1 Answer 1

Funkload could be a solution: http://funkload.nuxeo.org/

But when I needed to collect CPU/memory info, I just ran 'top -d 1 -b >> log.txt' and then parse the log.txt with some simple self-written program or bash script to get data I need. To calculate average cpu load, a simple bash script should be enough. If you need a chart, you can use, for example, gnuplot. I also like tool called 'sar' to monitor the host performance.

IMHO, in many cases, parsing top and sar output is much easier than customizing an universal tool like funkload

share|improve this answer
    
It also pays to give the system some slack in memory that it can use for its page cache / vfs cache i.e. what you see in top in the 'cached' column. –  ZaphodB Oct 2 '12 at 12:55

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.