diff --git a/apps/k8s01/mastodon/kustomization.yaml b/apps/k8s01/mastodon/kustomization.yaml index 7ef6ec96dbf4ad989ef7126e10afc3c4aba41abd..8a51612ed696ba0becbc79b27796289fa62d55c6 100644 --- a/apps/k8s01/mastodon/kustomization.yaml +++ b/apps/k8s01/mastodon/kustomization.yaml @@ -5,5 +5,6 @@ resources: - ../../base/mastodon - certificate.yaml - mastodon-values.yaml + - slo.yaml patchesStrategicMerge: - database-override.yaml diff --git a/apps/k8s01/mastodon/slo.yaml b/apps/k8s01/mastodon/slo.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5bd0a96343e574bbdf8f27f87160faf0198a392c --- /dev/null +++ b/apps/k8s01/mastodon/slo.yaml @@ -0,0 +1,21 @@ +apiVersion: sloth.slok.dev/v1 +kind: PrometheusServiceLevel +metadata: + name: requests-mastodon + namespace: mastodon +spec: + service: "mastodon" + slos: + - name: "requests-availability" + objective: 98 + description: "Mastodon SLO based on availability for HTTP request responses." + sli: + events: + errorQuery: sum(rate(nginx_ingress_controller_requests{exported_namespace="mastodon",ingress="nextcmastodonloud",status=~"(5..|429)"}[{{.window}}])) + totalQuery: sum(rate(nginx_ingress_controller_requests{exported_namespace="mastodon",ingress="mastodon"}[{{.window}}])) + alerting: + name: MastodonHighErrorRate + labels: + category: "availability" + annotations: + summary: "High error rate on 'mastodon' requests responses"