From 6549639bffc35d568a0299385bb9ea3f982575d7 Mon Sep 17 00:00:00 2001 From: Robusta Runner Date: Sun, 24 Aug 2025 16:42:40 +0300 Subject: [PATCH 1/2] tweaks --- docs/conf.py | 4 +- .../troubleshooting-alertmanager.rst | 89 --------------- .../exporting/exporting-data.rst | 31 ----- .../exporting/robusta-pro-features.rst | 8 +- .../exporting/send-alerts-api.rst | 107 ++++++++++++++++-- docs/index.rst | 7 +- 6 files changed, 108 insertions(+), 138 deletions(-) delete mode 100644 docs/configuration/alertmanager-integration/troubleshooting-alertmanager.rst delete mode 100644 docs/configuration/exporting/exporting-data.rst diff --git a/docs/conf.py b/docs/conf.py index 1b6fb7abb..a713d7a09 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -199,7 +199,9 @@ "developer-guide/platform/docs-contributions.html": "/master/docs-contributions.html#improving-these-docs", "developer-guide/platform/sinks-guide.html": "/master/configuration/sinks/sinks-development.html", "user-guide/robusta-cli.html": "/master/setup-robusta/installation/index.html", - "advanced/index.html": "/master/setup-robusta/installation/index.html" + "advanced/index.html": "/master/setup-robusta/installation/index.html", + "configuration/exporting/exporting-data.html": "/master/configuration/exporting/send-alerts-api.html", + "configuration/alertmanager-integration/troubleshooting-alertmanager.html": "/master/configuration/exporting/send-alerts-api.html" } diff --git a/docs/configuration/alertmanager-integration/troubleshooting-alertmanager.rst b/docs/configuration/alertmanager-integration/troubleshooting-alertmanager.rst deleted file mode 100644 index 76ea56fd9..000000000 --- a/docs/configuration/alertmanager-integration/troubleshooting-alertmanager.rst +++ /dev/null @@ -1,89 +0,0 @@ -Sending Alerts to the Robusta UI -================================= - -Why Send Your Alerts to Robusta? ---------------------------------- - -Benefits include: - -* Persistent alert history on a filterable timeline -* Centralized view of alerts from all your monitoring systems (multiple Prometheus instances, cloud services, custom tools) -* AI investigation of alerts -* Correlations between alerts and Kubernetes deploys -* and more! - -.. image:: /images/robusta-ui-timeline.png - :alt: Prometheus Alert History - -Setting Up Alert Integration ------------------------------ - -To configure alert integration with your monitoring system, see :doc:`Alert Sources `. - -Common Troubleshooting Scenarios ---------------------------------- - -.. tab-set:: - - .. tab-item:: General Issues - - **Not receiving alerts in Robusta UI?** - - 1. **Just installed?** Wait 10 minutes after installation for all components to initialize - 2. **Check your specific integration:** Each alert source has its own troubleshooting guide on its documentation page - 3. **Verify authentication:** Ensure API keys and webhook URLs are correctly configured - - **Need to test your integration?** - - Refer to your specific alert source documentation for testing procedures. - - .. tab-item:: AlertManager - - **Not receiving alerts?** - - 1. **Verify routing configuration:** - - - Ensure Robusta is the first receiver in your AlertManager configuration, or - - All previous receivers have ``continue: true`` set - - See configuration examples in your specific alert source documentation - - 2. **Check logs for errors:** - - - Review AlertManager logs for webhook errors - - Check Prometheus Operator logs (if using kube-prometheus-stack) - - Look for errors in Robusta runner logs - - 3. **Check pod health (embedded Prometheus stack):** - - - Verify all Prometheus and AlertManager pods are running - - Look for OOMKills and increase memory limits if needed - - See :doc:`Embedded Prometheus troubleshooting ` - - 4. **Verify network connectivity (external AlertManager):** - - - Test connectivity to Robusta webhook endpoint - - Check firewall rules and network policies - - Ensure AlertManager can resolve DNS names - - **Alerts arriving but missing Kubernetes context?** - - Check :doc:`Alert Label Mapping ` to customize how Prometheus labels map to Kubernetes resources. - - -Testing Your Integration ------------------------- - -Each alert source has specific testing methods: - -* **Standard AlertManager**: Use ``robusta demo-alert`` command -* **Cloud Services**: Check the specific service's documentation for test procedures -* **Custom Systems**: Use the test features built into your monitoring platform - -Refer to your specific integration documentation for detailed testing steps. - -Need More Help? ---------------- - -* Check your specific alert source documentation for detailed troubleshooting -* Review logs in AlertManager, Prometheus Operator (if applicable), and Robusta runner -* Join our `Slack community `_ for direct support \ No newline at end of file diff --git a/docs/configuration/exporting/exporting-data.rst b/docs/configuration/exporting/exporting-data.rst deleted file mode 100644 index 72b6a2f3c..000000000 --- a/docs/configuration/exporting/exporting-data.rst +++ /dev/null @@ -1,31 +0,0 @@ -Robusta API Reference -============================================== - -.. note:: - These features are available with the Robusta SaaS platform and self-hosted commercial plans. They are not available in the open-source version. - -The Robusta platform exposes HTTP APIs for exporting data, sending alerts, and managing resources. - -.. toctree:: - :maxdepth: 1 - - send-alerts-api - configuration-changes-api - alert-export-api - alert-statistics-api - namespace-resources-api - -Getting Started ---------------- - -All APIs require authentication using an API key. Generate API keys in the Robusta UI: - -**Settings** → **API Keys** → **New API Key** - -Assign appropriate permissions to your API key based on the APIs you plan to use. - -Related Resources ------------------ - -* For webhook integration, see :doc:`Custom Webhooks ` -* Example implementation: `Prometheus report-generator `_ \ No newline at end of file diff --git a/docs/configuration/exporting/robusta-pro-features.rst b/docs/configuration/exporting/robusta-pro-features.rst index 2d9ad141d..09338dcd5 100644 --- a/docs/configuration/exporting/robusta-pro-features.rst +++ b/docs/configuration/exporting/robusta-pro-features.rst @@ -33,14 +33,14 @@ Data Export and Reporting APIs Export alert history and generate reports using Robusta's REST APIs. -:doc:`Alert History Import and Export API ` - Comprehensive API for exporting alert history, generating reports, and sending custom alerts programmatically. +**Robusta API Reference** + Comprehensive APIs for exporting alert history, generating reports, and sending custom alerts programmatically. Features include: * :doc:`Alert Export API `: Export historical alert data with filtering by time range, alert name, and account * :doc:`Alert Reporting API `: Get aggregated statistics and counts for different alert types -* :doc:`Custom Alert API `: Send alerts programmatically from external systems +* :doc:`Send Alerts API `: Send alerts programmatically from external systems or via integrations * :doc:`Configuration Changes API `: Track configuration changes in your environment Additional Pro Features @@ -64,4 +64,4 @@ To access these features: 2. **Self-hosted Commercial**: Contact support@robusta.dev for enterprise plans with self-hosted UI 3. **API Access**: Generate API keys in the Robusta platform under **Settings** → **API Keys** -For detailed API documentation and examples, see :doc:`Alert History Import and Export API `. \ No newline at end of file +For detailed API documentation and examples, see the individual API references listed above. \ No newline at end of file diff --git a/docs/configuration/exporting/send-alerts-api.rst b/docs/configuration/exporting/send-alerts-api.rst index ef6e4db0a..34b5cafa4 100644 --- a/docs/configuration/exporting/send-alerts-api.rst +++ b/docs/configuration/exporting/send-alerts-api.rst @@ -1,18 +1,44 @@ Send Alerts API -============================================== +=============== + +Why Send Your Alerts to Robusta? +--------------------------------- + +Benefits include: + +* Persistent alert history on a filterable timeline +* Centralized view of alerts from all your monitoring systems (multiple Prometheus instances, cloud services, custom tools) +* AI investigation of alerts +* Correlations between alerts and Kubernetes deploys +* and more! + +.. image:: /images/robusta-ui-timeline.png + :alt: Prometheus Alert History + +Integration Methods +------------------- + +There are two main ways to send alerts to Robusta: + +1. **Pre-built Integrations**: Use our existing integrations for AlertManager, Nagios, SolarWinds, and other monitoring systems. See :doc:`Alert Sources <../index>`. + +2. **Programmatic API**: Send alerts directly using our REST API (detailed below). + +Send Alerts API +--------------- .. note:: - This feature is available with the Robusta SaaS platform and self-hosted commercial plans. It is not available in the open-source version. + This API is available with the Robusta SaaS platform and self-hosted commercial plans. It is not available in the open-source version. Use this endpoint to send alert data to Robusta. You can send up to 1000 alerts in a single request. .. _send-alerts-api: POST https://api.robusta.dev/api/alerts ----------------------------------------------------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Request Body Schema -^^^^^^^^^^^^^^^^^^^^^^^^ +"""""""""""""""""""" The request body must include the following fields: @@ -34,7 +60,7 @@ The request body must include the following fields: - Yes Alert Schema -^^^^^^^^^^^^ +"""""""""""" Each alert in the ``alerts`` list must follow the specific schema, which includes the following fields: @@ -116,7 +142,7 @@ Each alert in the ``alerts`` list must follow the specific schema, which include - No Example Request -^^^^^^^^^^^^^^^ +""""""""""""""" Here is an example of a ``POST`` request to send a list of alerts: @@ -155,7 +181,7 @@ In this request, replace the following placeholders: - ``API-KEY``: Your API Key for authentication. You can generate this token by navigating to **Settings** -> **API Keys** -> **New API Key**. Request Headers -^^^^^^^^^^^^^^^^^^^^ +""""""""""""""" .. list-table:: :widths: 30 70 @@ -169,10 +195,10 @@ Request Headers - Must be set to ``application/json``. Response Format -^^^^^^^^^^^^^^^^^^^^ +""""""""""""""" Success Response -"""""""""""""""" +~~~~~~~~~~~~~~~~ If the request is successful, the API will return the following response: @@ -185,7 +211,7 @@ If the request is successful, the API will return the following response: - **Status Code**: `200 OK` Error Response -"""""""""""""" +~~~~~~~~~~~~~~ If there is an error in processing the request, the API will return the following format: @@ -196,4 +222,63 @@ If there is an error in processing the request, the API will return the followin "error_code": 123 } -- **Status Code**: Varies based on the error (e.g., `400 Bad Request`, `500 Internal Server Error`). \ No newline at end of file +- **Status Code**: Varies based on the error (e.g., `400 Bad Request`, `500 Internal Server Error`). + +Troubleshooting +--------------- + +.. tab-set:: + + .. tab-item:: General Issues + + **Not receiving alerts in Robusta UI?** + + 1. **Just installed?** Wait 10 minutes after installation for all components to initialize + 2. **Check your specific integration:** Each alert source has its own troubleshooting guide on its documentation page + 3. **Verify authentication:** Ensure API keys and webhook URLs are correctly configured + + **Need to test your integration?** + + Refer to your specific alert source documentation for testing procedures. + + .. tab-item:: AlertManager + + **Not receiving alerts?** + + 1. **Verify routing configuration:** + + - Ensure Robusta is the first receiver in your AlertManager configuration, or + - All previous receivers have ``continue: true`` set + - See configuration examples in your specific alert source documentation + + 2. **Check logs for errors:** + + - Review AlertManager logs for webhook errors + - Check Prometheus Operator logs (if using kube-prometheus-stack) + - Look for errors in Robusta runner logs + + 3. **Check pod health (embedded Prometheus stack):** + + - Verify all Prometheus and AlertManager pods are running + - Look for OOMKills and increase memory limits if needed + - See :doc:`Embedded Prometheus troubleshooting <../alertmanager-integration/embedded-prometheus>` + + **Alerts arriving but missing Kubernetes context?** + + Check :doc:`Alert Label Mapping ` to customize how Prometheus labels map to Kubernetes resources. + +Testing Your Integration +------------------------ + +Each alert source has specific testing methods: + +* **Standard AlertManager**: Use ``robusta demo-alert`` command +* **Cloud Services**: Check the specific service's documentation for test procedures +* **Custom API**: Use the curl example above with test data + +Refer to your specific integration documentation for detailed testing steps. + +Need More Help? +--------------- + +* Join our `Slack community `_ for direct support \ No newline at end of file diff --git a/docs/index.rst b/docs/index.rst index 3e979e626..84c33b5b7 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -83,8 +83,11 @@ configuration/exporting/robusta-pro-features setup-robusta/alertsui - configuration/exporting/exporting-data - configuration/alertmanager-integration/troubleshooting-alertmanager + configuration/exporting/send-alerts-api + configuration/exporting/configuration-changes-api + configuration/exporting/alert-export-api + configuration/exporting/alert-statistics-api + configuration/exporting/namespace-resources-api .. toctree:: :maxdepth: 4 From abbe6101be94a95153707e5dd36f0e0e9c723328 Mon Sep 17 00:00:00 2001 From: Pavan Gudiwada Date: Tue, 26 Aug 2025 11:51:06 +0530 Subject: [PATCH 2/2] Duplicate with Testing Your Integration below --- docs/configuration/exporting/send-alerts-api.rst | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/configuration/exporting/send-alerts-api.rst b/docs/configuration/exporting/send-alerts-api.rst index 34b5cafa4..bfd026941 100644 --- a/docs/configuration/exporting/send-alerts-api.rst +++ b/docs/configuration/exporting/send-alerts-api.rst @@ -237,10 +237,6 @@ Troubleshooting 2. **Check your specific integration:** Each alert source has its own troubleshooting guide on its documentation page 3. **Verify authentication:** Ensure API keys and webhook URLs are correctly configured - **Need to test your integration?** - - Refer to your specific alert source documentation for testing procedures. - .. tab-item:: AlertManager **Not receiving alerts?**