Capturing or simulating specific URLs¶
We can use the hoverctl destination command to specify which URLs to capture or simulate. The destination
setting can be tested using the --dry-run flag. This makes it easy to check whether the destination setting
will filter out URLs as required.
hoverctl start
hoverctl destination "ip" --dry-run http://ip.jsontest.com
hoverctl destination "ip" --dry-run http://time.jsontest.com
hoverctl stop
This tells us that setting the destination to ip will allow the URL http://ip.jsontest.com to be captured or simulated, while the URL
http://time.jsontest.com will be ignored.
Now we have checked the destination setting, we can apply it to filter out the URLs we don’t want to capture.
hoverctl start
hoverctl destination "ip"
hoverctl mode capture
curl --proxy http://localhost:8500 http://ip.jsontest.com
curl --proxy http://localhost:8500 http://time.jsontest.com
hoverctl logs
hoverctl export simulation.json
hoverctl stop
If we examine the logs and the simulation.json file, we can see that only a request response pair to the http://ip.jsontest.com
URL has been captured.
The destination setting can be either a string or a regular expression.
hoverctl start
hoverctl destination "^.*api.*com" --dry-run https://api.github.com
hoverctl destination "^.*api.*com" --dry-run https://api.slack.com
hoverctl destination "^.*api.*com" --dry-run https://github.com
hoverctl stop
Here, we can see that setting the destination to ^.*api.*com will allow the https://api.github.com and https://api.slack.com
URLs to be captured or simulated, while the https://github.com URL will be ignored.