Skip to content

Commit ae28640

Browse files
authored
Merge branch 'master' into crds-support
2 parents 1821bfe + eda0360 commit ae28640

72 files changed

Lines changed: 1178 additions & 1708 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/deploy-docs.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,24 +35,24 @@ jobs:
3535
PROJECT_ID: ${{ secrets.GKE_PROD_PROJECT }}
3636
steps:
3737
- name: Checkout
38-
uses: actions/checkout@v4
38+
uses: actions/checkout@v5
3939

40-
- uses: google-github-actions/auth@v2
40+
- uses: google-github-actions/auth@v3
4141
if: needs.has-secrets.outputs.docs
4242
with:
4343
project_id: ${{ secrets.GKE_PROD_PROJECT }}
4444
workload_identity_provider: 'projects/429189597230/locations/global/workloadIdentityPools/github/providers/robusta-repos' # prod
4545

4646
- name: Set up gcloud CLI
47-
uses: google-github-actions/setup-gcloud@v2
47+
uses: google-github-actions/setup-gcloud@v3
4848
if: needs.has-secrets.outputs.docs
4949
with:
5050
project_id: ${{ secrets.GKE_PROD_PROJECT }}
5151

5252
- name: Set up Python
53-
uses: actions/setup-python@v2
53+
uses: actions/setup-python@v6
5454
with:
55-
python-version: 3.9
55+
python-version: 3.11
5656

5757
- name: Install dependencies
5858
run: |

.github/workflows/new-contributors-autoreply.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
issues: write
1111
runs-on: ubuntu-latest
1212
steps:
13-
- uses: actions/first-interaction@v1
13+
- uses: actions/first-interaction@v3
1414
with:
1515
repo-token: ${{ secrets.GITHUB_TOKEN }}
1616
issue-message: "Hi 👋, thanks for opening an issue! Please note, it may take some time for us to respond, but we'll get back to you as soon as we can! \n\n- 💬 **Slack Community:** Join Robusta team and other contributors on Slack [here](https://bit.ly/robusta-slack).\n- 📖 **Docs:** Find our documentation [here](https://docs.robusta.dev/master/).\n- 🎥 **YouTube Channel:** Watch our videos [here](https://www.youtube.com/@RobustaDev)."

.github/workflows/release.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,18 @@ jobs:
2121

2222
steps:
2323
- name: Checkout
24-
uses: actions/checkout@v4
24+
uses: actions/checkout@v5
2525

2626
- name: Get release version
2727
run: echo "$RELEASE_VER"
2828

29-
- uses: google-github-actions/auth@v2
29+
- uses: google-github-actions/auth@v3
3030
with:
3131
project_id: ${{ secrets.GKE_PROD_PROJECT }}
3232
workload_identity_provider: 'projects/429189597230/locations/global/workloadIdentityPools/github/providers/robusta-repos' # prod
3333

3434
- name: Set up gcloud CLI
35-
uses: google-github-actions/setup-gcloud@v2
35+
uses: google-github-actions/setup-gcloud@v3
3636
with:
3737
project_id: ${{ secrets.GKE_PROD_PROJECT }}
3838

@@ -73,7 +73,7 @@ jobs:
7373
fixed-
7474
7575
- name: Login to Docker Hub
76-
uses: docker/login-action@v1
76+
uses: docker/login-action@v3
7777
with:
7878
username: ${{ secrets.DOCKER_USERNAME }}
7979
password: ${{ secrets.DOCKER_PASSWORD }}
@@ -88,9 +88,9 @@ jobs:
8888
path: container-ids.json
8989

9090
- name: Set up Python
91-
uses: actions/setup-python@v2
91+
uses: actions/setup-python@v6
9292
with:
93-
python-version: 3.9
93+
python-version: 3.11
9494

9595
- name: Install dependencies
9696
run: |

.github/workflows/test_robusta.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,23 +7,23 @@ jobs:
77
name: Pre-commit checks
88
runs-on: ubuntu-latest
99
steps:
10-
- uses: actions/checkout@v4
11-
- uses: actions/setup-python@v5
10+
- uses: actions/checkout@v5
11+
- uses: actions/setup-python@v6
1212
- uses: pre-commit/action@v3.0.1
1313

1414
run_tests:
1515
needs: check
1616
runs-on: ubuntu-latest
1717
steps:
18-
- uses: actions/checkout@v2
18+
- uses: actions/checkout@v5
1919
- name: Set up Python
20-
uses: actions/setup-python@v2
20+
uses: actions/setup-python@v6
2121
with:
2222
python-version: 3.11
2323

2424
# setup a KIND cluster for tests which need a kubernetes image
2525
- name: Create k8s Kind Cluster
26-
uses: helm/kind-action@v1.2.0
26+
uses: helm/kind-action@v1.12.0
2727
- name: Output KIND info
2828
run: |
2929
kubectl config get-contexts

docs/conf.py

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -109,10 +109,15 @@
109109
"how-it-works/privacy-and-security.html": "/master/setup-robusta/privacy-and-security.html",
110110
"how-it-works/index.html": "/master/playbook-reference/what-are-playbooks.html",
111111
"playbook-reference/examples.html": "/master/playbook-reference/prometheus-examples/index.html",
112-
"tutorials/playbook-track-changes.html": "/master/playbook-reference/kubernetes-examples/playbook-failed-liveness.html",
113-
"tutorials/playbook-job-failure.html": "/master/playbook-reference/kubernetes-examples/playbook-job-failure.html",
114-
"tutorials/playbook-failed-liveness.html": "/master/playbook-reference/kubernetes-examples/playbook-failed-liveness.html",
115-
"tutorials/playbook-track-secrets.html": "/master/playbook-reference/kubernetes-examples//playbook-track-secrets.html",
112+
"tutorials/playbook-track-changes.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
113+
"tutorials/playbook-job-failure.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
114+
"tutorials/playbook-failed-liveness.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
115+
"tutorials/playbook-track-secrets.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
116+
"playbook-reference/kubernetes-examples/playbook-failed-liveness.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
117+
"playbook-reference/kubernetes-examples/playbook-job-failure.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
118+
"playbook-reference/kubernetes-examples/playbook-track-changes.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
119+
"playbook-reference/kubernetes-examples/playbook-track-secrets.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
120+
"playbook-reference/kubernetes-examples/track-kubernetes-changes.html": "/master/playbook-reference/kubernetes-examples/kubernetes-change-notifications.html",
116121
"tutorials/alert-remediation.html": "/master/playbook-reference/prometheus-examples/alert-remediation.html",
117122
"tutorials/alert-custom-enrichment.html": "/master/playbook-reference/prometheus-examples/alert-custom-enrichment.html",
118123
"catalog/sinks/slack.html": "/master/configuration/sinks/slack.html",
@@ -201,7 +206,16 @@
201206
"user-guide/robusta-cli.html": "/master/setup-robusta/installation/index.html",
202207
"advanced/index.html": "/master/setup-robusta/installation/index.html",
203208
"configuration/exporting/exporting-data.html": "/master/configuration/exporting/send-alerts-api.html",
204-
"configuration/alertmanager-integration/troubleshooting-alertmanager.html": "/master/configuration/exporting/send-alerts-api.html"
209+
"configuration/alertmanager-integration/troubleshooting-alertmanager.html": "/master/configuration/exporting/send-alerts-api.html",
210+
"configuration/alertmanager-integration/grafana-alert-manager.html": "/master/configuration/alertmanager-integration/grafana-self-hosted.html",
211+
"configuration/alertmanager-integration/grafana-cloud-mimir.html": "/master/configuration/alertmanager-integration/grafana-cloud.html",
212+
"playbook-reference/what-are-playbooks.html": "/master/playbook-reference/overview.html",
213+
"how-it-works/alert-builtin-enrichment.html": "/master/playbook-reference/builtin-alert-enrichment.html",
214+
"setup-robusta/installation/extend-prometheus-installation.html": "/master/setup-robusta/installation/standalone-installation.html",
215+
"playbook-reference/defining-playbooks/index.html": "/master/playbook-reference/index.html",
216+
"configuration/alertmanager-integration/alert-custom-prometheus.html": "/master/configuration/alertmanager-integration/embedded-prometheus.html#creating-custom-prometheus-alerts",
217+
"configuration/alertmanager-integration/index.html": "/master/configuration/index.html",
218+
"notification-routing/notification-routing-examples.html": "/master/notification-routing/index.html"
205219
}
206220

207221

docs/configuration/alertmanager-integration/_prometheus_flags_check.rst

Lines changed: 0 additions & 8 deletions
This file was deleted.

docs/configuration/alertmanager-integration/alert-manager.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
In-cluster AlertManager Integration
2-
****************************************
1+
AlertManager - in-cluster
2+
**************************
33

44
This guide shows how to send alerts from an existing AlertManager to Robusta in the same cluster.
55

6-
If your AlertManager is in a different cluster, refer to :ref:`External Prometheus`.
6+
If your AlertManager is in a different cluster, refer to :doc:`AlertManager - external <outofcluster-prometheus>`.
77

88
Send Alerts to Robusta
99
============================
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
Customize Labels and Priorities
2+
=================================
3+
4+
Relabel Prometheus Alerts
5+
--------------------------
6+
7+
When sending Prometheus alerts to Robusta, alerts are mapped onto related Kubernetes resources, when possible. This mapping relies on the alerts having the following labels:
8+
9+
+---------------------------+-------------------------------------------+
10+
| Kubernetes Resource | Alert Labels |
11+
+===========================+===========================================+
12+
| Deployment | deployment, namespace |
13+
+---------------------------+-------------------------------------------+
14+
| DaemonSet | daemonset, namespace |
15+
+---------------------------+-------------------------------------------+
16+
| StatefulSet | statefulset, namespace |
17+
+---------------------------+-------------------------------------------+
18+
| Job | job_name, namespace |
19+
+---------------------------+-------------------------------------------+
20+
| Pod | pod, namespace |
21+
+---------------------------+-------------------------------------------+
22+
| HorizontalPodAutoscaler | horizontalpodautoscaler, namespace |
23+
+---------------------------+-------------------------------------------+
24+
| Node | node or instance (fallback if node |
25+
| | doesn't exist) |
26+
+---------------------------+-------------------------------------------+
27+
28+
If your alerts have different labels, you can change the mapping with the ``alertRelabel`` helm value.
29+
30+
A relabeling has 3 attributes:
31+
32+
* ``source``: The label's name on your alerts (which differs from the expected value in the above table)
33+
* ``target``: The standard label name that Robusta expects (a value from the table above)
34+
* ``operation``: Either ``add`` (default) or ``replace``. If ``add``, your custom mapping will be recognized in addition to Robusta's default mapping.
35+
36+
For example:
37+
38+
.. code-block:: yaml
39+
40+
alertRelabel:
41+
- source: "pod_name"
42+
target: "pod"
43+
operation: "add"
44+
- source: "deployment_name"
45+
target: "deployment"
46+
operation: "replace"
47+
- source: "job_name"
48+
target: "job"
49+
50+
Mapping Custom Alert Severity
51+
------------------------------
52+
53+
To help you prioritize alerts from different sources, Robusta maps alert severity to four standard levels:
54+
55+
* **HIGH** - requires your immediate attention - may indicate a service outage
56+
* **LOW** - minor problems and areas for improvement (e.g. performance) - to be reviewed periodically on a weekly or bi-weekly cadence
57+
* **INFO** - you probably want to be aware of these, but do not necessarily need to take action
58+
* **DEBUG** - debug only - can be ignored unless you're actively debugging an issue
59+
60+
You are free to interpret these levels differently, but the above is a good starting point for most companies.
61+
62+
Prometheus alerts are normalized to the above levels as follows:
63+
64+
+----------------------+--------------------+
65+
| Prometheus Severity | Robusta Severity |
66+
+======================+====================+
67+
| critical | HIGH |
68+
+----------------------+--------------------+
69+
| high | HIGH |
70+
+----------------------+--------------------+
71+
| medium | HIGH |
72+
+----------------------+--------------------+
73+
| error | HIGH |
74+
+----------------------+--------------------+
75+
| warning | LOW |
76+
+----------------------+--------------------+
77+
| low | LOW |
78+
+----------------------+--------------------+
79+
| info | INFO |
80+
+----------------------+--------------------+
81+
| debug | DEBUG |
82+
+----------------------+--------------------+
83+
84+
Prometheus alerts with a severity not in the above list are mapped to Robusta's INFO level.
85+
86+
You can map your own Prometheus severities, using the ``custom_severity_map`` Helm value. For example:
87+
88+
.. code-block:: yaml
89+
90+
globalConfig:
91+
custom_severity_map:
92+
# maps a p1 value on your own alerts to Robusta's HIGH value
93+
p1: high
94+
# maps a p2 value on your own alerts to Robusta's LOW value
95+
p2: low
96+
97+
The mapped values must be one of: ``high``, ``low``, ``info``, and ``debug``.

docs/configuration/alertmanager-integration/dynatrace.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ Step 2: Create a Dynatrace Problems Webhook
3535

3636
5. Set the **Custom payload** to the Dynatrace macro:
3737

38-
.. code-block:: json
38+
.. code-block:: text
3939
4040
{ProblemDetailsJSONv2}
4141
4242
6. Add the following **HTTP headers**:
4343

44-
.. code-block:: http
44+
.. code-block:: text
4545
4646
Authorization: Bearer <api-key>
4747
account-id: <account_id>

docs/configuration/alertmanager-integration/eks-managed-prometheus.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Since AWS Managed Prometheus doesn't have a built-in AlertManager, you'll need t
1818

1919
1. Set up Amazon Managed Grafana with your AMP workspace
2020
2. Configure Grafana alerts to send to Robusta
21-
3. See :doc:`grafana-alert-manager` for detailed Grafana alerting setup
21+
3. See :doc:`grafana-self-hosted` for detailed Grafana alerting setup
2222

2323
Configure Metric Querying
2424
=========================

0 commit comments

Comments
 (0)