Test how your application handles an Azure Service Bus outage. Run Gremlin network experiments and reliability tests to validate messaging resilience.
Azure Service Bus offers features most queues don't: sessions, ordering guarantees, and dead-letter queues. Applications built on those guarantees have correctness assumptions baked in, which raises the stakes when the broker becomes unreachable.
Install the Gremlin Agent on the services on either side of the queue and you can test those assumptions directly. With Gremlin, you can:
- Check whether ordering survives an interruption. If a session is interrupted and messages are redelivered, an application that assumed strict sequence may process them in an order it never anticipated. A blackhole experiment forces that redelivery.
- Find out what producers do with nowhere to put work. Some block, some drop messages, some retry hard enough to slow recovery. Testing tells you which one you built.
- Look at your dead-letter queue. Messages accumulate there successfully, from the system's point of view, while whatever they represented never happens. Trigger failures and check whether anyone is watching that queue at all.
Ordering guarantees and dead-letter queues both work as advertised. Whether your application uses them the way you think it does is a separate question.
Dependencies: Failure Test
Simulate a failed dependency by dropping all network traffic to the dependency.
Dependencies: Latency Test
Recreate poor network conditions by delaying all network traffic to a dependency by 100ms.
Unreliable Networks - Dependencies
Simulate unreliable network conditions when communicating with dependencies by adding latency to API calls. Test whether your users are affected when dependency response times degrade.
* Testing a dependency doesn't require installing anything on it. Gremlin runs the experiment from the service that calls it, so compatibility depends on that host rather than on the dependency itself. Check our compatibility documentation for supported operating systems and platforms, or get in touch if you don't see yours.
Intelligent Health Checks - Azure
Automatically monitor your Azure services during testing in one-click with Intelligent Health Checks.
Avoid downtime. Use Gremlin to turn failure into resilience.
Gremlin empowers you to proactively root out failure before it causes downtime. See how you can harness chaos to build resilient systems by requesting a demo of Gremlin.
