Doctor Droid enables you to monitor relative behaviour between events which are linked in context of a customer, an order or a transaction. That way, you can easily detect anomalies and breakage in customer experience on an individual or on an aggregate level.
What are monitors?
Monitors are rules you setup on your events which you expect to be followed for great customer experience. If those rules are violated, you want to trigger an alert to notify you of the same with details that help you know what rule got violated, helping you know in real-time if customer are facing problems in using your product. Same can be extended to background tasks, third-party integrations and data pipelines.
For creating a monitor, you choose two events from the set of events you have been sending. We'll call them E1 & E2. You choose how to join those events together by selecting one key from each of them. We'll call them K1 & K2. If they both has some key with same name, that is pre-selected. Using this, Doctor Droid will know how to detect the second event relative to the first event.
You can setup triggers within a monitor that basically rules that define correct working of your product. If those are violated, you get alerted. Doctor Droid currently offers 2 type of triggers:
This is for generating alert when E2 is delayed by more than 'X' time interval than E1.
It will generate alerts for each such instance and notify you of the E1 payload for which it happened. This type of trigger is useful for knowing failures in payments, data pipelines or route creation background tasks.
This is for generating alert when Y% of E1 events have their E2 events delayed by 'X' time interval when periodically evaluated every 'T' minutes.
It will generate alerts for an aggregation of events and will notify you with a link of the Doctor Droid portal where you can see all E1 events whose E2 events got delayed or were missing. This takes into account all E1 events that were received between (Current_Time - T - X) and (Current_Time -X) timestamps.
Alerts are generated each time a rule is violated within a monitor. You can choose to receive them in a workspace of your choice:
You need to configure a webhook URL for a specific channel in your workspace and set it within a monitor. If you have already set it before in some other monitor, we'll use that for all monitors, unless you want to specify something particular URL for a monitor. Here is a youtube video that explains how to create a slack webhook URL.
We send you an email as an alert on the registered email of your account. You can choose to specify a different one for ay monitor as well.
We are looking to introduce more alerting channels in the coming months as well as introduce more type triggers to be setup to support complex monitoring needs for modern products. If you want to know more about our roadmap or want to request for something specific, do share it with us here.
Updated 5 days ago