Create custom alerting rules

Mission Control provides advanced capabilities for managing custom alerting rules through Helm values.

This guide explains how to create custom alerting rules for Mission Control environments and integrate them with your monitoring workflow.

Prerequisites

  • Mission Control version 1.15.0 or later installed.

  • Access to the Kubernetes cluster where Mission Control is deployed.

  • Basic understanding of Prometheus alerting rules and PromQL.

  • Helm chart access for configuration updates.

How custom alerting rules work

Mission Control separates default and custom alerting rules into different management systems:

  • Default rules: Mission Control automatically manages these rules and updates them during system upgrades.

  • Custom rules: You manage these rules through Helm values, providing advanced configuration options.

This separation provides several benefits:

  • Mission Control preserves your custom rules during updates.

  • You can manage custom rules independently through Helm chart settings.

  • Rules created in the UI are managed separately from Helm-configured rules, allowing you to use both approaches simultaneously.

  • Multiple Mission Control instances can coexist without conflicts.

Create custom alerting rules

Create custom alerting rules by configuring them in your Helm values.

Custom alerting rules follow the Prometheus alerting rules format:

- alert: AlertName
  annotations:
    context: ""
    description: "DESCRIPTION"
    summary: "SUMMARY"
  expr: promql_expression
  for: duration
  labels:
    group: ""
    severity: warning|critical|info

Configure rules through Helm values

Mission Control provides the customRules field to add custom alerting rules to your Helm values. Helm creates the ConfigMap automatically.

Add custom alerting rules to your Helm values using the customRules field:

alerting:
  customRules: |
    - alert: my-custom-alert-rule
      annotations:
        context: ""
        description: test alert
        summary: test alert
      expr: <promql expression>
      for: 1m
      labels:
        group: ""
        severity: warning

Apply the configuration

Update your Mission Control installation with the new configuration:

# If using a local chart
helm upgrade mission-control ./mission-control-chart \
  --values your-custom-values.yaml

# If using a remote chart
helm upgrade mission-control datastax/mission-control \
  --values your-custom-values.yaml

Verify the rules

Check that your custom rules are loaded:

# Check for successful rule loading
kubectl logs -n mission-control deployment/mission-control-mimir-ruler | grep -i "rule"

# Verify the alerting rules are loaded
kubectl get configmap -n mission-control | grep ruler

Example custom rules

Here are some sample custom alerting rules for Mission Control environments.

High memory usage alert

- alert: HighMemoryUsage
  annotations:
    context: ""
    description: "Memory usage is above 90% for more than 5 minutes on {{ $labels.instance }}"
    summary: "High memory usage detected"
  expr: (host_memory_total_bytes - host_memory_available_bytes) / host_memory_total_bytes > 0.9
  for: 5m
  labels:
    group: ""
    severity: warning

Cassandra latency alert

- alert: HighCassandraLatency
  annotations:
    context: ""
    description: "95th percentile latency is above 100ms for more than 2 minutes"
    summary: "High Cassandra latency detected"
  expr: histogram_quantile(0.95, rate(org_apache_cassandra_metrics_client_request_latency_seconds_bucket[5m])) > 0.1
  for: 2m
  labels:
    group: ""
    severity: critical

Low disk space alert

- alert: LowDiskSpace
  annotations:
    context: ""
    description: "Disk space is above 90% on {{ $labels.instance }}"
    summary: "Low disk space"
  expr: host_filesystem_used_ratio{mountpoint="/"} > 0.9
  for: 1m
  labels:
    group: ""
    severity: critical

Update rules

Update existing rules by modifying your Helm values and applying the changes:

helm upgrade mission-control ./mission-control-chart --values your-custom-values.yaml

Delete rules

Remove specific rules by editing your Helm values and applying the changes:

helm upgrade mission-control ./mission-control-chart --values your-custom-values.yaml

See also

After creating custom alerting rules, you can use Mission Control’s features to work with your monitoring through the alerting system. For more information, see:

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2025 DataStax, an IBM Company | Privacy policy | Terms of use | Manage Privacy Choices

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com