Making sure your workflows are resilient when things go wrong is essential to keep your mission-critical integrations working smoothly. We always recommend building workflows “defensively,” which means validating the input to a workflow to make sure that nothing should break further down the line.
Unfortunately, the universe is an imperfect and chaotic place, and you won’t be able to predict everything: APIs can respond in unexpected ways, and there will always be edge cases with your inputs. The first step when things don’t go to plan is to get the information about what has happened to the right place, that’s where Error Alerting comes in.
Luckily there is already a flexible and powerful way of handling errors available to us: we’ll use Tray workflows. Errors can be sent to another workflow, and that workflow is responsible for handling the alerting. This novel approach means that you can use all of the functionality of a Tray workflow to route your errors wherever you like. For example, you can send error reports to a dedicated slack channel or use the HTTP connector to pass on any errors to your monitoring system of choice. For really mission critical workflows you might want to use the Twilio connector to send a text message to whoever’s on call, or you could use an Airtable connector to keep a log of strange events to investigate later.
To set this up, you simply create a workflow with an Alerting Trigger and then configure the workflow that you want to monitor to route any errors there. More detailed instructions for setting up alerting are available in this guide. The erring workflow sends important information to the Alerting Trigger such as the kind of error that occurred along with details of which workflow experienced the error and when. It even sends a link to the log entry of the failure to help with debugging.
Watch this 4-minute demo overview video of Tray Error Alerting here.
We’ve been trying out Error Alerting for a while now both internally and with customers, and we’re confident that this mechanism provides the most flexibility to set up your alerts however you like for your use case. We’re always keen to get feedback so please get in touch if you have any questions or suggestions.