Skip to main content

simulate and replay

Simulate

Run request fixtures through Dhal:

npx dhal simulate fixtures.simulation.json
npx dhal simulate fixtures.simulation.json --json

Use simulation to confirm that rules catch expected bad requests.

Replay

Replay false-positive fixtures:

npx dhal replay fixtures.replay.json
npx dhal replay fixtures.replay.json --fail-on-block
npx dhal replay fixtures.replay.json --json

Use replay in CI before enabling or tightening block mode.

Fixture shape

[
{
"name": "normal search request",
"request": {
"method": "GET",
"url": "/api/search?q=hello",
"path": "/api/search",
"headers": {
"user-agent": "Mozilla/5.0",
"accept": "application/json"
},
"ip": "198.51.100.10"
},
"expected": "allow"
}
]