GroundHAR Day is a tool for doing rapid, reproducible performance experiments.
Given an HTTP Archive - or HAR - GroundHAR Day simulates the observed network environment inside a VirtualBox VM. This makes it possible to replay the captured page load under different network conditions. More interestingly, the HAR content can be edited directly to quickly and rigorously evaluate different optimization ideas.
- Provision the VM
vagrant up
- Start the GroundHAR Day server
vagrant ssh
# then, from the Vagrant ssh session:
cd /opt/groundhar-day/src
sudo su
../bin/groundhar-day
- Upload a HAR to replay
curl -H "Content-Type: application/json" --data-binary @./examples/lawnsea.com.har -X PUT http://localhost:9000/har
- Open http://localhost:9222 in your browser and click on "about:blank"
- Type
http://lawnsea.com
into the headless browser's URL bar - Reset the simulation for another replay
curl http://localhost:9000/reset
The VirtualBox VM is configured via environment variables in the shell where
vagrant up
is run.
The number of virtual CPUs the VM should have. Defaults to 4.
The port on the host where the Chrome DevTools is exposed. Defaults to 9222.
The amount of memory in megabytes to reserve for the VM. Defaults to 2048.
The IP address of the VM on the groundhar-day
VirtualBox internal network.
Defaults to 192.168.42.1.
The port on the host where the GroundHAR Day server is exposed. Defaults to 9000.