2

Recently i installed a website that had too many requests and it was too slow. Many improvements have been made to the web site code and we've also bought a new server.

I want to test the new server with exactly the same requests that made the old server slow. After that, i will double the requests, make new tests and so on.

These requests are logged in the apache log files. So, I can parse those files and make some kind of script to make the same requests. Of course, in this case, the requests will be made only by my computer against the server, but hey, better than nothing.

Questions: - is there some app that does this already? - would you use wget? ab? python script?

Thanks!

daigorocub
  • 249
  • 2
  • 10
  • 1
    Apache log files dont usually supply request headers or the body of POST requests. Have you factored this into your replays? – Matthew Ife Nov 13 '11 at 16:00
  • +1 to @mife - probably what hurt you the most was what was in those post/query parameters. There are apps out there that allow you to create synthetic tests from real user traffic, but if all you have are logs, sounds like it's too late for that. – sandroid Nov 13 '11 at 16:03

2 Answers2

3

I've used jmeter for this in the past, but it requires that your logs are in extended format.

If this is not the case for you, try something like:
https://github.com/chromano/apache-log-replay

faker
  • 17,496
  • 2
  • 60
  • 70
  • Thanks! I used apache-log-replay. I had to alter the script because of the log format, but it works, although it seems slow for request made in the same second. – daigorocub Nov 13 '11 at 18:07
0

Tsung - is the distributed load testing tool. It can use apache log to create test plans.

Biriukov
  • 407
  • 2
  • 8