Skip to main content
Alert rule for automated monitoring and alerting in ML systems. An AlertRule defines conditions that automatically trigger notifications when ML model metrics exceed specified thresholds. Alert rules are essential for proactive monitoring of model performance, data drift, and operational issues.

Example

Alert rules continuously monitor metrics and trigger notifications when thresholds are exceeded. Use appropriate evaluation delays to avoid false positives from temporary data fluctuations.
Initialize an AlertRule instance. Creates an alert rule configuration for automated monitoring of ML model metrics. The alert rule defines conditions that trigger notifications when thresholds are exceeded, enabling proactive monitoring of model performance and data quality.

Parameters

str
required
Human-readable name for the alert rule. Should be descriptive and unique within the model context.
UUID | str
required
UUID of the model this alert rule monitors. Must be a valid model that exists in the Fiddler platform.
str | UUID
required
ID of the metric to monitor (e.g., “drift_score”, “accuracy”, “precision”, “recall”, custom metric IDs).
Priority | str
required
Alert priority level (HIGH, MEDIUM, LOW). Determines urgency and routing of notifications.
CompareTo | str
required
Comparison method for threshold evaluation:
  • BASELINE: Compare against a fixed baseline
  • TIME_PERIOD: Compare against previous time period
  • RAW_VALUE: Compare against absolute threshold
AlertCondition | str
required
Alert condition (GT, LT, OUTSIDE_RANGE). Defines when the alert should trigger relative to the threshold.
BinSize | str
required
Time aggregation window (HOUR, DAY, WEEK). Controls how data is grouped for metric calculation.
AlertThresholdAlgo | str
default:"AlertThresholdAlgo.MANUAL"
Threshold calculation method (MANUAL or AUTO). MANUAL uses user-defined thresholds, AUTO calculates dynamic thresholds based on historical data.
dict[str, Any] | None
default:"None"
Parameters for automatic threshold calculation. Used when threshold_type is AUTO.
float | None
default:"None"
Critical alert threshold value. Triggers high-priority notifications when exceeded.
list[str] | None
default:"None"
List of feature columns to monitor. For feature-specific drift alerts. If None, monitors all features.
UUID | str | None
default:"None"
UUID of the baseline to compare against. Required when compare_to is BASELINE.
UUID | str | None
default:"None"
UUID of the data segment to monitor. For segment-specific monitoring (optional).
int | None
default:"None"
Number of time bins to compare against. Used with TIME_PERIOD comparison (e.g., 7 for week-over-week).
int
default:"0"
Delay in minutes before evaluating alerts. Helps avoid false positives from incomplete data.
str | None
default:"None"
Custom category for organizing alerts. Useful for grouping related alerts in dashboards.

Example

After initialization, call create() to persist the alert rule to the Fiddler platform. Alert rules begin monitoring immediately after creation.

classmethod get()

Retrieve an alert rule by its unique identifier. Fetches an alert rule from the Fiddler platform using its UUID. This method returns the complete alert rule configuration including thresholds, notification settings, and monitoring status.

Parameters

UUID | str
required
The unique identifier (UUID) of the alert rule to retrieve. Can be provided as a UUID object or string representation.

Returns

The alert rule instance with all configuration and metadata populated from the server.

Raises

  • NotFound – If no alert rule exists with the specified ID.
  • ApiError – If there’s an error communicating with the Fiddler API.

Example

This method makes an API call to fetch the latest alert rule configuration from the server, including any recent threshold or notification updates.

classmethod list()

Get a list of all alert rules in the organization.

Parameters

UUID | str
required
list from the specified model
UUID | str | None
default:"None"
list rules set on the specified metric id
list[str] | None
default:"None"
list rules set on the specified list of columns
list[str] | None
default:"None"
order result as per list of fields. [“-field_name”] for descending

Returns

paginated list of alert rules for the specified filters

delete()

Delete an alert rule.

create()

Create a new alert rule.

Returns

AlertRule

update()

Update an existing alert rule.

enable_notifications()

Enable notifications for an alert rule

disable_notifications()

Disable notifications for an alert rule

set_notification_config()

Set notification config for an alert rule

Parameters

list[str] | None
default:"None"
list of emails
list[str] | None
default:"None"
list of pagerduty services
str | None
default:"None"
severity of pagerduty
list[UUID] | None
default:"None"
list of webhooks UUIDs

Returns

NotificationConfig object

get_notification_config()

Get notifications config for an alert rule

Returns

NotificationConfig object