Introduction
Togai’s Alerting System is designed to monitor various entities for specific conditions and trigger incidents when these conditions are met. It is composed of alert templates, alerts, and incidents. The system allows users to create alerts to define conditions and thresholds on state of a single entity or group of entities. If an alert condition is satisfied, the system will create an incident.
Entities of Alerts module
Alert template
An Alert Template serves as a blueprint for creating alerts that monitor specific entities for certain conditions. The purpose of an alert template is to define the logic and thresholds for triggering alerts in various scenarios. Commonly, the template blueprint has the structure resembling this: Property of the [Entity or entities] belonging to the [Owner] breaches the [Condition] where condition in turn has a condition operation and threshold.
Example:
-
Alert template:
credit_low_balance
Entity: Credits
Owner: Account
Parameters: Threshold
Condition: Balance of
Entity: Credits
belonging toOwner: Account
drops belowParameter: Threshold
Alert
An Alert can be imagined as an instance of an alert templates
combined with a set of parameters
. Alerts monitor data for breaches depending on the configured condition thresholds.
Example:
-
Alert template:
credit_low_balance
Entity: Credits
Owner: Account = Acc1
Parameters: Threshold = 100$
Condition: Balance of
Entity: Credits
belonging toOwner: Account Acc1
drops belowParameter: 100$
Incident
An Incident is created when the condition defined in an alert is met, i.e., when the threshold is breached. The incident serves as a notification or event that requires action. Each incident record includes the open and close time stamps, as well as snapshots of the data being evaluated around the time of each incident also termed as Report Data
.
Short Summary:
- Alert Template + Parameters => Alert
- Alert + Condition is breached => Incident containing Report Data
Alert templates
alertTemplateId | Entity | Owner Details | Parameters | Report Data | Auto Resolvable |
---|---|---|---|---|---|
unprocessed_events | N/A | N/A | unprocessedEventParams | unprocessedEventReportData | FALSE |
usage_breach | USAGE_METER | ACCOUNT | usageBreachParams | usageBreachReportData | FALSE |
credit_low_balance | CREDIT | ACCOUNT | lowBalanceParams | lowBalanceReportData | TRUE |
wallet_low_balance | WALLET | ACCOUNT | lowBalanceParams | lowBalanceReportData | TRUE |
entitlement_low_balance | FEATURE | ACCOUNT | lowBalanceParams | lowBalanceReportData | TRUE |
invoice_due_breach | INVOICE | ACCOUNT | invoiceDueBreachParams | invoiceDueBreachReportData | FALSE |
invoice_overdue_breach | INVOICE | ACCOUNT | invoiceDueBreachParams | invoiceDueBreachReportData | FALSE |
unpaid_invoice_amount_breach | null | ACCOUNT | unpaidInvoiceAmtBreachParams | unpaidInvoiceAmtBreachReportData | TRUE |
Parameter Schema
UnprocessedEvent Params
This is the last window number of minutes from alert interval time that will be considered for generating the alert
Threshold limit above which incidents are created
Name of the event schema for which unprocessed events count is required
UsageBreach Params
Threshold limit for a given aggregation period above which alerts are generated.
Allowed Values: DAY
, WEEK
, MONTH
, PRICING_CYCLE
. Defaults to PRICING_CYCLE
LowBalance Params
Minimum threshold limit below which incidents are created
InvoiceDueBreach Params
Threshold limit for days above which incidents are created
Threshold limit for invoice sum above which incidents are created
UnpaidInvoiceAmountBreach Params
Threshold limit for unpaid invoice sum above which incidents are created
Report Data Schema
UnprocessedEvent Report Data
Count of the unprocessed events
UsageBreach Report Data
Usage units
LowBalance Report Data
Remaining balance of credits for an account
Total granted units of credits for an account
accountId corresponding to the alert
InvoiceDueBreach Report Data
Sum of all invoices that are due / overdue after threshold number of days
Count of invoices that are due / overdue after threshold number of days”
accountId corresponding to the alert
UnpaidInvoiceAmountBreach Report Data
Sum of the total unpaid amount
accountId corresponding to the alert
Sum of the due invoices contributing to the outstanding sum
Sum of the draft invoices contributing to the outstanding sum
Number of due invoices contributing to the outstanding sum
Number of draft invoices contributing to the outstanding sum
Sum of the partially paid invoices contributing to the outstanding sum
Number of partially paid invoices contributing to the outstanding sum