diff --git a/assets/alertmanager/alertmanager.yaml b/assets/alertmanager/alertmanager.yaml
index f08a210600ce3ec7447c9b8d3c1df81c8c1e2f57..6b5789b57eb914414024bc837a97340808fd7adf 100644
--- a/assets/alertmanager/alertmanager.yaml
+++ b/assets/alertmanager/alertmanager.yaml
@@ -5,8 +5,10 @@ route:
   group_wait: 30s
   group_interval: 5m
   repeat_interval: 12h
-  receiver: 'webhook'
+  receiver: 'null'
+  routes:
+  - match:
+      alertname: DeadMansSwitch
+    receiver: 'null'
 receivers:
-- name: 'webhook'
-  webhook_configs:
-  - url: 'http://alertmanagerwh:30500/'
+- name: 'null'
diff --git a/assets/prometheus/rules/general.rules b/assets/prometheus/rules/general.rules
index 9a8f931f6880c7c9e3c3334c0ef85c5eba13942c..ac78229775b2faa23455af3c70527452348ca629 100644
--- a/assets/prometheus/rules/general.rules
+++ b/assets/prometheus/rules/general.rules
@@ -11,6 +11,18 @@ Alert TargetDown
     description = "A target of type {{ $labels.job }} is down."
   }
 
+### Dead man's switch ###
+
+ALERT DeadMansSwitch
+  IF vector(1)
+  LABELS {
+    severity = "none",
+  }
+  ANNOTATIONS {
+    summary = "Alerting DeadMansSwitch",
+    description = "This is a DeadMansSwitch meant to ensure that the entire Alerting pipeline is functional.",
+  }
+
 ### File descriptor alerts ###
 
 ALERT TooManyOpenFiles
diff --git a/manifests/alertmanager/alertmanager-config.yaml b/manifests/alertmanager/alertmanager-config.yaml
index eee36b33fae8b956c5dd7c5ef9c95dd7e3432c4d..62d39016214739e8f04a9158aad07df4a488013b 100644
--- a/manifests/alertmanager/alertmanager-config.yaml
+++ b/manifests/alertmanager/alertmanager-config.yaml
@@ -3,4 +3,4 @@ kind: Secret
 metadata:
   name: alertmanager-main
 data:
-  alertmanager.yaml: Z2xvYmFsOgogIHJlc29sdmVfdGltZW91dDogNW0Kcm91dGU6CiAgZ3JvdXBfYnk6IFsnam9iJ10KICBncm91cF93YWl0OiAzMHMKICBncm91cF9pbnRlcnZhbDogNW0KICByZXBlYXRfaW50ZXJ2YWw6IDEyaAogIHJlY2VpdmVyOiAnd2ViaG9vaycKcmVjZWl2ZXJzOgotIG5hbWU6ICd3ZWJob29rJwogIHdlYmhvb2tfY29uZmlnczoKICAtIHVybDogJ2h0dHA6Ly9hbGVydG1hbmFnZXJ3aDozMDUwMC8nCg==
+  alertmanager.yaml: Z2xvYmFsOgogIHJlc29sdmVfdGltZW91dDogNW0Kcm91dGU6CiAgZ3JvdXBfYnk6IFsnam9iJ10KICBncm91cF93YWl0OiAzMHMKICBncm91cF9pbnRlcnZhbDogNW0KICByZXBlYXRfaW50ZXJ2YWw6IDEyaAogIHJlY2VpdmVyOiAnbnVsbCcKICByb3V0ZXM6CiAgLSBtYXRjaDoKICAgICAgYWxlcnRuYW1lOiBEZWFkTWFuc1N3aXRjaAogICAgcmVjZWl2ZXI6ICdudWxsJwpyZWNlaXZlcnM6Ci0gbmFtZTogJ251bGwnCg==
diff --git a/manifests/prometheus/prometheus-k8s-rules.yaml b/manifests/prometheus/prometheus-k8s-rules.yaml
index f57b678559077b52b7cd01f477b804fa40fd7aa2..c157909faa33706ec1f20199a9b2d4db10b4ad12 100644
--- a/manifests/prometheus/prometheus-k8s-rules.yaml
+++ b/manifests/prometheus/prometheus-k8s-rules.yaml
@@ -235,6 +235,18 @@ data:
         description = "A target of type {{ $labels.job }} is down."
       }
     
+    ### Dead man's switch ###
+    
+    ALERT DeadMansSwitch
+      IF vector(1)
+      LABELS {
+        severity = "none",
+      }
+      ANNOTATIONS {
+        summary = "Alerting DeadMansSwitch",
+        description = "This is a DeadMansSwitch meant to ensure that the entire Alerting pipeline is functional.",
+      }
+    
     ### File descriptor alerts ###
     
     ALERT TooManyOpenFiles