An integration can pass every test and still cause trouble in production. A failed message at 2 a.m. doesn't announce itself, so support needs to be designed in before go-live. These six questions will show you where you stand.
1. How will we know a message failed?
Don't wait for a customer to tell you. Alert on failed workflow runs and on any message landing in a dead-letter queue, and set up a separate check for messages that should have arrived but didn't.
2. Can we find one specific message?
When someone asks about order 48213, can you trace it from end to end? Carry a correlation ID, or a business reference such as the order number, through every step and into your logs.
3. Can we resend it safely?
Know where failed messages are held, how long they are kept, and how to resubmit one. Write the steps down and practise them before you need them.
4. Will a retry create a duplicate?
Automatic retries are useful, but a call can succeed even when the response is lost. Make receiving systems idempotent where you can, for example by checking the order number before creating an order.
5. Who gets alerted, and what do they do first?
An alert nobody owns is just noise. Name an owner for each integration, agree on hours and escalation, and link each alert to a short runbook.
6. Which business process is affected?
"Logic App failed" doesn't tell the business much. "Invoices to partner X are delayed" does. Map every interface to the process it supports and to a contact on the business side.
If you can't answer them yet
That's normal, and most of the gaps can be closed without rebuilding anything. Start with your most business-critical interface, answer these six questions for it, then repeat.
Need help? We support integrations in production, including monitoring, fixes and small improvements.