Skip to main content

Alerts

Check a metric of your project against a threshold, read each firing in History, and send firings to Slack or a webhook.

An alert rule checks one metric of a project over a window. When the condition is true, Risicare records a firing in History and sends it to the channels of the rule. You make rules and read firings on the Alerts page of the dashboard.

Alerts are a dashboard feature. A secret key can read rules and History through the MCP server.

What runs today: you create, test and read alert rules and History on the Alerts page. Owners and admins add channels in Settings → Notifications. See Notification Channels.

What is not available: an API key cannot create, change or test alert rules, and it cannot reach channels, in this release. A secret key reads alert rules and History through the MCP server. See the REST API reference.

Open the Alerts page

Click Alerts in the side navigation. The bell icon in the top bar opens the same page. The bell is not an inbox: it shows no count and no list of firings. It is hidden on a narrow screen. The page has two tabs: Alert Rules and History. Click New rule on the first tab to make a rule.

A rule

The dialog New alert rule has these fields.

FieldWhat it takes
NameRequired, up to 255 characters
Description (optional)Free text
MetricOne of 12 metrics. See Metrics
Conditionabove, at or above, below, at or below, equal to or not equal to
ThresholdA number in the unit of the metric. It is not below 0
Window1, 5 (the default), 15, 30 or 60 minutes, or 6, 12 or 24 hours
SeverityInfo, Warning (the default), Error or Critical
FilterThe traces that the rule reads. See Filter
ChannelsThe enabled channels of the project, up to 20 for a rule
Cooldown1, 5 (the default), 15 or 30 minutes, or 1, 6 or 24 hours. After a firing, the rule records no new firing for this time. The row of the rule on the Alert Rules tab counts the checks that the cooldown held back
EnabledA switch, on by default

A line at the foot of the dialog reads the rule back, for example "Fires when Error rate above 12.5 % over the last 5 minutes for every trace." Click Create rule. To change a rule, click Edit. The same dialog opens, with Save changes.

Metrics

The list shows each metric with its unit, for example "Error rate (%)".

MetricUnitWhat the rule reads
Error rate%The share of traces with an error. 0 to 100
Latency p50, Latency p95, Latency p99msThe latency percentile
Tool error rate%The share of traces with a failed tool call
LLM error rate%The share of traces with a failed LLM call
Trace volumetracesThe number of traces. A whole number
CostUSDThe cost in US dollars
Total tokenstokensThe number of tokens. A whole number
Behaviour driftx bandThe largest band ratio of the behaviours. 0.5 to 10
Score meanscoreThe mean of one score. 0 to 1
Run verdictpointsThe drop of the pass rate of a run. 0 to 100

Type a percent as a percent: 5 means 5 %. A percent has at most 4 decimals, and any other threshold has at most 6.

Filter

The Filter has the same language as the filter bar of Traces. See Filtering and Search. An empty filter means every trace, except two kinds that a filter hides by default. Probe traces (root span control-channel-probe) are left out unless the filter has probes:show or a root: term. Traces that belong to an experiment run are left out unless the filter has an experiment term. Under the bar, the dialog counts the traces that the filter selects in the window, for example "Matches 12 traces over the last 5 minutes (now)." Press Enter in the bar to count again. A filter has at most 2,048 characters and 32 terms. A refused filter shows its message under the bar.

Fields of three metrics

Behaviour drift

The rule compares the traces of a release with the traces of an earlier release. A value above 1 x band means that at least one behaviour is outside its band. The condition is above or at or above. The threshold starts at 1, and the cooldown starts at 6 hours. See Behaviour and detections.

FieldChoices
BehavioursAll behaviours, or Only these (up to 20, and a tool by its name with Add tool)
Compare withPrevious release, or A release with a release name of up to 200 characters
SensitivityProject setting, Low, Normal or High
Minimum traces10 to 100,000 on each side. Empty uses the value of the sensitivity

Score mean

The rule reads the mean of one score over the traces that its filter selects. A trace with no score of this name is left out. Risicare never counts it as 0.

FieldChoices
Score nameA name from the list, or a name that you type. It has 1 to 128 characters and is case-sensitive. The mean of a true or false score is the share of true
Minimum scored traces1 to 100,000. The default is 10. The rule does not fire while fewer traces in the window have a score of this name

Run verdict

The block When a run closes replaces the window and the filter. The rule checks each run when it closes. The threshold is Smallest drop (points), and it starts at 0. The line "Compared with the previous release" has no control. See Runs and Verdicts.

FieldChoices
DatasetsAll datasets, or Only these (up to 20)
Minimum cases20 to 10,000. The default is 20. A verdict needs at least this many cases that both runs decided

Preview a rule on past data

For Error rate, Tool error rate, LLM error rate, the three latencies, Trace volume, Cost, Total tokens and Score mean, the dialog shows a chart called The last 24 hours. It plots one point for each hour, and the threshold as a dashed line. It reads, for example: "With this rule, 3 of the last 24 hours were over the threshold. The alert checks a rolling window of 60 minutes, so this is an estimate."

  • An hour of a rate with fewer than 30 traces is left out, and the dialog says how many hours.
  • Show the numbers opens a table with Hour (UTC), Value, Traces and The rule. The last column reads Would fire, Would not fire or Fewer than 30 traces.
  • Score mean needs a score name first: "Pick a score to see the last 24 hours."
  • Behaviour drift has no preview.

Run verdict shows The last 10 completed runs in scope. Each run has its name, its stored verdict, the drop in points, the cases compared and what the rule would do: would fire, clear, below the minimum or a reason. The list applies no cooldown and sends nothing.

Manage rules

Each rule is one row. A row shows:

  • the name;
  • the badges Off and the severity;
  • the number of firings;
  • the rule as a sentence;
  • the filter, or "Every trace";
  • "No channel (History only)", or the number of channels;
  • the cooldown;
  • the number of checks in which the condition was true but the cooldown held back the firing;
  • when the rule last fired.

The tab shows the first 50 rules.

ControlWhat it does
SwitchTurns the rule on or off
TestSends one test firing through the channels of the rule
Edit (pencil)Opens the dialog Edit alert rule
Delete (trash)Asks once. Delete rule stops the rule. You cannot restore it. Its firings stay in History

Test shows the value now and the state of each delivery. It checks every 2 seconds for 20 seconds, then says "Still pending after 20 seconds. History shows the final state." A test is not a firing: it does not start the cooldown and it sends no alert.triggered webhook. You can test one rule at most 6 times in 60 seconds.

History

The tab History lists the firings, newest first, 50 at a time. Load More shows the next 50. A row has:

  • The name of the rule, or "Deleted rule", and the severity. A test row has the chip Test.
  • The value against the threshold, for example "Error rate: 3.4 % (threshold above 5 %)", then the window and the filter, or "every trace".
  • One line for each channel: the name, then sent, pending or failed. A failed line shows the error text. A rule with no channel shows "No channel: recorded in History only."
  • "Triggered" or, for a test, "Sent", and the time.

A Behaviour drift row adds the worst behaviour. A Score mean row reads "Value: score mean quality 0.583 (24 scored, 0 without a score). Condition: below 0.70." A Run verdict row reads "Regressed: 18.0 points lower (± 11.5 points, p = 0.0021)", names the two runs and the cases compared, and has the link Open run. A test of a channel from Settings shows as "Channel test".

Start a rule from a chart or a run

  • From a chart: open the menu of a chart on a dashboard and click Create an alert. Under a row of a ranked-bar chart, click Alert on this group. The Alerts page opens with the dialog filled in. The metric comes from the measure of the chart. The window is 60 minutes for an hourly chart and 1,440 for a daily chart. The filter joins the filter of the dashboard, the filter of the chart and, for a group, the term of the group. An empty threshold gets a suggestion from the last 24 hours. A chart whose measure has no alert metric shows no item.
  • From a run: a Regressed verdict card has the link Alert me when a run regresses. It opens a new Run verdict rule with the dataset of the run chosen. See Alert on a regression.

Watch a prompt label

For the metrics Error rate, Latency p95, Cost, Score mean and Run verdict, the dialog has the section Watch a prompt label. Choose a Prompt and a Label. The rule follows the version that the label holds. When the rule fires, Risicare proposes a rollback. It never moves a label by itself. See Rollback proposals.

Who can do what

ActionViewerMemberAdminOwner
Read rulesYesYesYesYes
Create, edit, test and delete a rule; switch it on or offNoYesYesYes
Start a rule from a chart or a runNoYesYesYes
Add, change, test and delete a channelNoNoYesYes

A viewer sees the controls of a rule disabled, with the text "Only members, admins and owners can make or change alert rules. Your role here is viewer." See also the permission matrix.

Next Steps