diff options
Diffstat (limited to 'docs/cloud/alerts-notifications')
-rw-r--r-- | docs/cloud/alerts-notifications/add-discord-notification.md | 25 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/add-opsgenie-notification-configuration.md | 37 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md | 31 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/add-slack-notification-configuration.md | 28 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/add-webhook-notification-configuration.md | 187 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/manage-notification-methods.md | 34 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/notifications.md (renamed from docs/cloud/alerts-notifications/notifications.mdx) | 48 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/smartboard.mdx | 46 | ||||
-rw-r--r-- | docs/cloud/alerts-notifications/view-active-alerts.mdx | 76 |
9 files changed, 229 insertions, 283 deletions
diff --git a/docs/cloud/alerts-notifications/add-discord-notification.md b/docs/cloud/alerts-notifications/add-discord-notification.md index 386e6035..d1769f0e 100644 --- a/docs/cloud/alerts-notifications/add-discord-notification.md +++ b/docs/cloud/alerts-notifications/add-discord-notification.md @@ -1,17 +1,8 @@ -<!-- -title: "Add Discord notification configuration" -sidebar_label: "Add Discord notification configuration" -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-discord-notification-configuration.md" -sidebar_position: "1" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" -learn_docs_purpose: "Instructions on how to add notification configuration for Discord" ---> +# Add Discord notification configuration From the Netdata Cloud UI, you can manage your space's notification settings and enable the configuration to deliver notifications on Discord. -#### Prerequisites +## Prerequisites To enable Discord notifications you need: @@ -19,7 +10,7 @@ To enable Discord notifications you need: - Access to the space as an **administrator** - Have a Discord server able to receive webhook integrations. For mode details check [how to configure this on Discord](#settings-on-discord) -#### Steps +## Steps 1. Click on the **Space settings** cog (located above your profile icon) 1. Click on the **Notification** tab @@ -35,9 +26,9 @@ To enable Discord notifications you need: - Webhook URL - URL provided on Discord for the channel you want to receive your notifications. For more details check [how to configure this on Discord](#settings-on-discord) - Thread name - if the Discord channel is a **Forum channel** you will need to provide the thread name as well -#### Settings on Discord +## Settings on Discord -#### Enable webhook integrations on Discord server +## Enable webhook integrations on Discord server To enable the webhook integrations on Discord you need: 1. Go to *Integrations** under your **Server Settings @@ -51,9 +42,3 @@ To enable the webhook integrations on Discord you need: ![image](https://user-images.githubusercontent.com/82235632/214092713-d16389e3-080f-4e1c-b150-c0fccbf4570e.png) For more details please read this article from Discord: [Intro to Webhooks](https://support.discord.com/hc/en-us/articles/228383668). - -#### Related topics - -- [Alerts Configuration](https://github.com/netdata/netdata/blob/master/health/README.md) -- [Alert Notifications](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx) -- [Manage notification methods](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/manage-notification-methods.md)
\ No newline at end of file diff --git a/docs/cloud/alerts-notifications/add-opsgenie-notification-configuration.md b/docs/cloud/alerts-notifications/add-opsgenie-notification-configuration.md new file mode 100644 index 00000000..28e526c9 --- /dev/null +++ b/docs/cloud/alerts-notifications/add-opsgenie-notification-configuration.md @@ -0,0 +1,37 @@ +# Add Opsgenie notification configuration + +From the Cloud interface, you can manage your space's notification settings and from these you can add a specific configuration to get notifications delivered on Opsgenie. + +## Prerequisites + +To add Opsgenie notification configurations you need + +- A Netdata Cloud account +- Access to the space as an **administrator** +- Space on **Business** plan or higher +- Have a permission to add new integrations in Opsgenie. + +## Steps + +1. Click on the **Space settings** cog (located above your profile icon) +1. Click on the **Notification** tab +1. Click on the **+ Add configuration** button (near the top-right corner of your screen) +1. On the **Opsgenie** card click on **+ Add** +1. A modal will be presented to you to enter the required details to enable the configuration: + 1. **Notification settings** are Netdata specific settings + - Configuration name - you can optionally provide a name for your configuration you can easily refer to it + - Rooms - by specifying a list of Rooms you are select to which nodes or areas of your infrastructure you want to be notified using this configuration + - Notification - you specify which notifications you want to be notified using this configuration: All Alerts and unreachable, All Alerts, Critical only + 1. **Integration configuration** are the specific notification integration required settings, which vary by notification method. For Opsgenie: + - API Key - a key provided on Opsgenie for the channel you want to receive your notifications. For more details check [how to configure this on Opsgenie](#settings-on-opsgenie) + +## Settings on Opsgenie + +To enable the Netdata integration on Opsgenie you need: +1. Go to integrations tab of your team, click **Add integration**. + + ![image](https://user-images.githubusercontent.com/93676586/230361479-cb73919c-452d-47ec-8066-ed99be5f05e2.png) + +1. Pick **API** from available integrations. Copy your API Key and press **Save Integration**. + +1. Paste copied API key into the corresponding field in **Integration configuration** section of Opsgenie modal window in Netdata.
\ No newline at end of file diff --git a/docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md b/docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md index 6e47cfd9..64880ebe 100644 --- a/docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md +++ b/docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md @@ -1,26 +1,17 @@ -<!-- -title: "Add PagerDuty notification configuration" -sidebar_label: "Add PagerDuty notification configuration" -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md" -sidebar_position: "1" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" -learn_docs_purpose: "Instructions on how to add notification configuration for PagerDuty" ---> +# Add PagerDuty notification configuration -From the Cloud interface, you can manage your space's notification settings and from these you can add specific configuration to get notifications delivered on PagerDuty. +From the Cloud interface, you can manage your space's notification settings and from these you can add a specific configuration to get notifications delivered on PagerDuty. -#### Prerequisites +## Prerequisites To add PagerDuty notification configurations you need - A Cloud account - Access to the space as and **administrator** -- Space will needs to be on **Business** plan or higher +- Space needs to be on **Business** plan or higher - Have a PagerDuty service to receive events, for mode details check [how to configure this on PagerDuty](#settings-on-pagerduty) -#### Steps +## Steps 1. Click on the **Space settings** cog (located above your profile icon) 1. Click on the **Notification** tab @@ -34,9 +25,9 @@ To add PagerDuty notification configurations you need 1. **Integration configuration** are the specific notification integration required settings, which vary by notification method. For PagerDuty: - Integration Key - is a 32 character key provided by PagerDuty to receive events on your service. For more details check [how to configure this on PagerDuty](#settings-on-pagerduty) -#### Settings on PagerDuty +## Settings on PagerDuty -#### Enable webhook integrations on PagerDuty +## Enable webhook integrations on PagerDuty To enable the webhook integrations on PagerDuty you need: 1. Create a service to receive events from your services directory page: @@ -49,12 +40,4 @@ To enable the webhook integrations on PagerDuty you need: 1. Once the service is created you will be redirected to its configuration page, where you can copy the **integration key**, that you will need need to add to your notification configuration on Netdata UI: - ![image](https://user-images.githubusercontent.com/2930882/214255916-0d2e53d5-87cc-408a-9f5b-0308a3262d5c.png) - - -#### Related topics - -- [Alerts Configuration](https://github.com/netdata/netdata/blob/master/health/README.md) -- [Alert Notifications](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx) -- [Manage notification methods](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/manage-notification-methods.md)
\ No newline at end of file diff --git a/docs/cloud/alerts-notifications/add-slack-notification-configuration.md b/docs/cloud/alerts-notifications/add-slack-notification-configuration.md index d8d6185f..99bb2d5b 100644 --- a/docs/cloud/alerts-notifications/add-slack-notification-configuration.md +++ b/docs/cloud/alerts-notifications/add-slack-notification-configuration.md @@ -1,26 +1,17 @@ -<!-- -title: "Add Slack notification configuration" -sidebar_label: "Add Slack notification configuration" -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-slack-notification-configuration.md" -sidebar_position: "1" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" -learn_docs_purpose: "Instructions on how to add notification configuration for Slack" ---> +# Add Slack notification configuration -From the Cloud interface, you can manage your space's notification settings and from these you can add specific configuration to get notifications delivered on Slack. +From the Cloud interface, you can manage your space's notification settings and from these you can add a specific configuration to get notifications delivered on Slack. -#### Prerequisites +## Prerequisites To add discord notification configurations you need - A Netdata Cloud account - Access to the space as an **administrator** -- Space will needs to be on **Business** plan or higher +- Space needs to be on **Business** plan or higher - Have a Slack app on your workspace to receive the webhooks, for mode details check [how to configure this on Slack](#settings-on-slack) -#### Steps +## Steps 1. Click on the **Space settings** cog (located above your profile icon) 1. Click on the **Notification** tab @@ -34,7 +25,7 @@ To add discord notification configurations you need 1. **Integration configuration** are the specific notification integration required settings, which vary by notification method. For Slack: - Webhook URL - URL provided on Slack for the channel you want to receive your notifications. For more details check [how to configure this on Slack](#settings-on-slack) -#### Settings on Slack +## Settings on Slack To enable the webhook integrations on Slack you need: 1. Create an app to receive webhook integrations. Check [Create an app](https://api.slack.com/apps?new_app=1) from Slack documentation for further details @@ -54,10 +45,3 @@ To enable the webhook integrations on Slack you need: ![image](https://user-images.githubusercontent.com/82235632/214104412-13aaeced-1b40-4894-85f6-9db0eb35c584.png) For more details please check Slacks's article [Incoming webhooks for Slack](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack). - - -#### Related topics - -- [Alerts Configuration](https://github.com/netdata/netdata/blob/master/health/README.md) -- [Alert Notifications](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx) -- [Manage notification methods](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/manage-notification-methods.md)
\ No newline at end of file diff --git a/docs/cloud/alerts-notifications/add-webhook-notification-configuration.md b/docs/cloud/alerts-notifications/add-webhook-notification-configuration.md index e6d04233..0140c30f 100644 --- a/docs/cloud/alerts-notifications/add-webhook-notification-configuration.md +++ b/docs/cloud/alerts-notifications/add-webhook-notification-configuration.md @@ -1,17 +1,8 @@ -<!-- -title: "Add webhook notification configuration" -sidebar_label: "Add webhook notification configuration" -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-webhook-notification-configuration.md" -sidebar_position: "1" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" -learn_docs_purpose: "Instructions on how to add notification configuration for webhook" ---> +# Add webhook notification configuration -From the Cloud interface, you can manage your space's notification settings and from these you can add specific configuration to get notifications delivered on a webhook using a predefined schema. +From the Cloud interface, you can manage your space's notification settings and from these you can add a specific configuration to get notifications delivered on a webhook using a predefined schema. -#### Prerequisites +## Prerequisites To add discord notification configurations you need @@ -20,7 +11,7 @@ To add discord notification configurations you need - Space needs to be on **Pro** plan or higher - Have an app that allows you to receive webhooks following a predefined schema, for mode details check [how to create the webhook service](#webhook-service) -#### Steps +## Steps 1. Click on the **Space settings** cog (located above your profile icon) 1. Click on the **Notification** tab @@ -34,16 +25,16 @@ To add discord notification configurations you need 1. **Integration configuration** are the specific notification integration required settings, which vary by notification method. For webhook: - Webhook URL - webhook URL is the url of the service that Netdata will send notifications to. In order to keep the communication secured, we only accept HTTPS urls. Check [how to create the webhook service](#webhook-service). - Extra headers - these are optional key-value pairs that you can set to be included in the HTTP requests sent to the webhook URL. For mode details check [Extra headers](#extra-headers) - - Authorization Mechanism - Netdata webhook integration supports 3 different authorization mechanisms. For mode details check [Authorization mechanism](#authorization-mechanism): + - Authentication Mechanism - Netdata webhook integration supports 3 different authentication mechanisms. For mode details check [Authentication mechanisms](#authentication-mechanisms): - Mutual TLS (recommended) - default authentication mechanism used if no other method is selected. - Basic - the client sends a request with an Authorization header that includes a base64-encoded string in the format **username:password**. These will settings will be required inputs. - Bearer - the client sends a request with an Authorization header that includes a **bearer token**. This setting will be a required input. -#### Webhook service +## Webhook service A webhook integration allows your application to receive real-time alerts from Netdata by sending HTTP requests to a specified URL. In this document, we'll go over the steps to set up a generic webhook integration, including adding headers, and implementing different types of authorization mechanisms. -##### Netdata webhook integration +### Netdata webhook integration A webhook integration is a way for one service to notify another service about events that occur within it. This is done by sending an HTTP POST request to a specified URL (known as the "webhook URL") when an event occurs. @@ -59,16 +50,17 @@ The notification content sent to the destination service will be a JSON object h | chart | string | The chart associated with the alert. | | context | string | The chart context. | | space | string | The space where the node that raised the alert is assigned. | +| rooms | object[object(string,string)] | Object with list of rooms names and urls where the node belongs to. | | family | string | Context family. | | class | string | Classification of the alert, e.g. "Error". | | severity | string | Alert severity, can be one of "warning", "critical" or "clear". | | date | string | Date of the alert in ISO8601 format. | | duration | string | Duration the alert has been raised. | -| critical_count | integer | umber of critical alerts currently existing on the same node. | -| warning_count | integer | Number of warning alerts currently existing on the same node. | +| additional_active_critical_alerts | integer | Number of additional critical alerts currently existing on the same node. | +| additional_active_warning_alerts | integer | Number of additional warning alerts currently existing on the same node. | | alarm_url | string | Netdata Cloud URL for this alarm. | -##### Extra headers +### Extra headers When setting up a webhook integration, the user can specify a set of headers to be included in the HTTP requests sent to the webhook URL. @@ -78,28 +70,165 @@ By default, the following headers will be sent in the HTTP request |:-------------------------------:|-----------------------------| | Content-Type | application/json | -##### Authorization mechanism +### Authentication mechanisms -Netdata webhook integration supports 3 different authorization mechanisms: +Netdata webhook integration supports 3 different authentication mechanisms: -1. Mutual TLS (recommended) +#### Mutual TLS authentication (recommended) -In mutual Transport Layer Security (mTLS) authorization, the client and the server authenticate each other using X.509 certificates. This ensures that the client is connecting to the intended server, and that the server is only accepting connections from authorized clients. - -To take advantage of mutual TLS, you can configure your server to verify Netdata's client certificate. To do that you need to download our [CA certificate file](http://localhost) and configure your server to use it as the +In mutual Transport Layer Security (mTLS) authentication, the client and the server authenticate each other using X.509 certificates. This ensures that the client is connecting to the intended server, and that the server is only accepting connections from authorized clients. This is the default authentication mechanism used if no other method is selected. -2. Basic +To take advantage of mutual TLS, you can configure your server to verify Netdata's client certificate. In order to achieve this, the Netdata client sending the notification supports mutual TLS (mTLS) to identify itself with a client certificate that your server can validate. + +The steps to perform this validation are as follows: + +- Store Netdata CA certificate on a file in your disk. The content of this file should be: + +<details> + <summary>Netdata CA certificate</summary> + +``` +-----BEGIN CERTIFICATE----- +MIIF0jCCA7qgAwIBAgIUDV0rS5jXsyNX33evHEQOwn9fPo0wDQYJKoZIhvcNAQEN +BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRYwFAYDVQQKEw1OZXRkYXRhLCBJbmMuMRIwEAYDVQQL +EwlDbG91ZCBTUkUxGDAWBgNVBAMTD05ldGRhdGEgUm9vdCBDQTAeFw0yMzAyMjIx +MjQzMDBaFw0zMzAyMTkxMjQzMDBaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECBMK +Q2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNjbzEWMBQGA1UEChMNTmV0 +ZGF0YSwgSW5jLjESMBAGA1UECxMJQ2xvdWQgU1JFMRgwFgYDVQQDEw9OZXRkYXRh +IFJvb3QgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCwIg7z3R++ +ppQYYVVoMIDlhWO3qVTMsAQoJYEvVa6fqaImUBLW/k19LUaXgUJPohB7gBp1pkjs +QfY5dBo8iFr7MDHtyiAFjcQV181sITTMBEJwp77R4slOXCvrreizhTt1gvf4S1zL +qeHBYWEgH0RLrOAqD0jkOHwewVouO0k3Wf2lEbCq3qRk2HeDvkv0LR7sFC+dDms8 +fDHqb/htqhk+FAJELGRqLeaFq1Z5Eq1/9dk4SIeHgK5pdYqsjpBzOTmocgriw6he +s7F3dOec1ZZdcBEAxOjbYt4e58JwuR81cWAVMmyot5JNCzYVL9e5Vc5n22qt2dmc +Tzw2rLOPt9pT5bzbmyhcDuNg2Qj/5DySAQ+VQysx91BJRXyUimqE7DwQyLhpQU72 +jw29lf2RHdCPNmk8J1TNropmpz/aI7rkperPugdOmxzP55i48ECbvDF4Wtazi+l+ +4kx7ieeLfEQgixy4lRUUkrgJlIDOGbw+d2Ag6LtOgwBiBYnDgYpvLucnx5cFupPY +Cy3VlJ4EKUeQQSsz5kVmvotk9MED4sLx1As8V4e5ViwI5dCsRfKny7BeJ6XNPLnw +PtMh1hbiqCcDmB1urCqXcMle4sRhKccReYOwkLjLLZ80A+MuJuIEAUUuEPCwywzU +R7pagYsmvNgmwIIuJtB6mIJBShC7TpJG+wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMC +AQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU9IbvOsPSUrpr8H2zSafYVQ9e +Ft8wDQYJKoZIhvcNAQENBQADggIBABQ08aI31VKZs8jzg+y/QM5cvzXlVhcpkZsY +1VVBr0roSBw9Pld9SERrEHto8PVXbadRxeEs4sKivJBKubWAooQ6NTvEB9MHuGnZ +VCU+N035Gq/mhBZgtIs/Zz33jTB2ju3G4Gm9VTZbVqd0OUxFs41Iqvi0HStC3/Io +rKi7crubmp5f2cNW1HrS++ScbTM+VaKVgQ2Tg5jOjou8wtA+204iYXlFpw9Q0qnP +qq6ix7TfLLeRVp6mauwPsAJUgHZluz7yuv3r7TBdukU4ZKUmfAGIPSebtB3EzXfH +7Y326xzv0hEpjvDHLy6+yFfTdBSrKPsMHgc9bsf88dnypNYL8TUiEHlcTgCGU8ts +ud8sWN2M5FEWbHPNYRVfH3xgY2iOYZzn0i+PVyGryOPuzkRHTxDLPIGEWE5susM4 +X4bnNJyKH1AMkBCErR34CLXtAe2ngJlV/V3D4I8CQFJdQkn9tuznohUU/j80xvPH +FOcDGQYmh4m2aIJtlNVP6+/92Siugb5y7HfslyRK94+bZBg2D86TcCJWaaZOFUrR +Y3WniYXsqM5/JI4OOzu7dpjtkJUYvwtg7Qb5jmm8Ilf5rQZJhuvsygzX6+WM079y +nsjoQAm6OwpTN5362vE9SYu1twz7KdzBlUkDhePEOgQkWfLHBJWwB+PvB1j/cUA3 +5zrbwvQf +-----END CERTIFICATE----- +``` +</details> + +- Enable client certificate validation on the web server that is doing the TLS termination. Below we show you how to perform this configuration in `NGINX` and `Apache` + + **NGINX** + +```bash +server { + listen 443 ssl default_server; + + # ... existing SSL configuration for server authentication ... + ssl_verify_client on; + ssl_client_certificate /path/to/Netdata_CA.pem; + + location / { + if ($ssl_client_s_dn !~ "CN=api.netdata.cloud") { + return 403; + } + # ... existing location configuration ... + } +} +``` + +**Apache** + +```bash +Listen 443 +<VirtualHost *:443> + # ... existing SSL configuration for server authentication ... + SSLVerifyClient require + SSLCACertificateFile "/path/to/Netdata_CA.pem" +</VirtualHost> +<Directory /var/www/> + Require expr "%{SSL_CLIENT_S_DN_CN} == 'api.netdata.cloud'" + # ... existing directory configuration ... +</Directory> +``` + +#### Basic authentication In basic authorization, the client sends a request with an Authorization header that includes a base64-encoded string in the format username:password. The server then uses this information to authenticate the client. If this authentication method is selected, the user can set the user and password that will be used when connecting to the destination service. -3. Bearer +#### Bearer token authentication + +In bearer token authentication, the client sends a request with an Authorization header that includes a bearer token. The server then uses this token to authenticate the client. Bearer tokens are typically generated by an authentication service, and are passed to the client after a successful authentication. If this method is selected, the user can set the token to be used for connecting to the destination service. + +##### Challenge secret + +To validate that you has ownership of the web application that will receive the webhook events, we are using a challenge response check mechanism. + +This mechanism works as follows: + +- The challenge secret parameter that you provide is a shared secret between you and Netdata only. +- On your request for creating a new Webhook integration, we will make a GET request to the url of the webhook, adding a query parameter `crc_token`, consisting of a random string. +- You will receive this request on your application and it must construct an encrypted response, consisting of a base64-encoded HMAC SHA-256 hash created from the crc_token and the shared secret. The response will be in the format: + +```json +{ + "response_token": "sha256=9GKoHJYmcHIkhD+C182QWN79YBd+D+Vkj4snmZrfNi4=" +} +``` + +- We will compare your application's response with the hash that we will generate using the challenge secret, and if they are the same, the integration creation will succeed. + +We will do this validation everytime you update your integration configuration. + +- Response requirements: + - A base64 encoded HMAC SHA-256 hash created from the crc_token and the shared secret. + - Valid response_token and JSON format. + - Latency less than 5 seconds. + - 200 HTTP response code. + +**Example response token generation in Python:** + +Here you can see how to define a handler for a Flask application in python 3: + +```python +import base64 +import hashlib +import hmac +import json + +key ='YOUR_CHALLENGE_SECRET' + +@app.route('/webhooks/netdata') +def webhook_challenge(): + token = request.args.get('crc_token').encode('ascii') + + # creates HMAC SHA-256 hash from incomming token and your consumer secret + sha256_hash_digest = hmac.new(key.encode(), + msg=token, + digestmod=hashlib.sha256).digest() + + # construct response data with base64 encoded hash + response = { + 'response_token': 'sha256=' + base64.b64encode(sha256_hash_digest).decode('ascii') + } -In bearer token authorization, the client sends a request with an Authorization header that includes a bearer token. The server then uses this token to authenticate the client. Bearer tokens are typically generated by an authentication service, and are passed to the client after a successful authentication. If this method is selected, the user can set the token to be used for connecting to the destination service. + # returns properly formatted json response + return json.dumps(response) +``` #### Related topics - [Alerts Configuration](https://github.com/netdata/netdata/blob/master/health/README.md) -- [Alert Notifications](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx) +- [Alert Notifications](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.md) - [Manage notification methods](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/manage-notification-methods.md) diff --git a/docs/cloud/alerts-notifications/manage-notification-methods.md b/docs/cloud/alerts-notifications/manage-notification-methods.md index 115aaae7..17c7f879 100644 --- a/docs/cloud/alerts-notifications/manage-notification-methods.md +++ b/docs/cloud/alerts-notifications/manage-notification-methods.md @@ -1,25 +1,17 @@ -<!-- -title: "Manage notification methods" -sidebar_label: "Manage notification methods" -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/manage-notification-methods.md" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" -learn_docs_purpose: "Instructions on how to manage notification methods" ---> +# Manage notification methods From the Cloud interface, you can manage your space's notification settings as well as allow users to personalize their notifications setting -### Manage space notification settings +## Manage space notification settings -#### Prerequisites +### Prerequisites To manage space notification settings, you will need the following: - A Netdata Cloud account - Access to the space as an **administrator** -#### Available actions per notification methods based on service level +### Available actions per notification methods based on service level | **Action** | **Personal service level** | **System service level** | | :- | :-: | :-: | @@ -30,9 +22,9 @@ To manage space notification settings, you will need the following: Notes: * For Netadata provided ones you can't delete the existing notification method configuration. -* Enable, Edit and Add actions over specific notification methods will only be allowed if your plan has access to those ([service classification](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx#service-classification)) +* Enable, Edit and Add actions over specific notification methods will only be allowed if your plan has access to those ([service classification](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.md#service-classification)) -#### Steps +### Steps 1. Click on the **Space settings** cog (located above your profile icon) 1. Click on the **Notification** tab @@ -53,9 +45,9 @@ Notes: 1. **Delete an existing** notification method configuartion. Netdata provided ones can't be deleted, e.g. Email - Use the trash icon to delete your configuration -### Manage user notification settings +## Manage user notification settings -#### Prerequisites +### Prerequisites To manage user specific notification settings, you will need the following: @@ -64,7 +56,7 @@ To manage user specific notification settings, you will need the following: Note: If an administrator has disabled a Personal [service level](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.md#service-level) notification method this will override any user specific setting. -#### Steps +### Steps 1. Click on the **User notification settings** shortcut on top of the help button 1. You are presented with: @@ -78,11 +70,3 @@ Note: If an administrator has disabled a Personal [service level](https://github 1. **Activate notifications** for a room you aren't a member of - From the **All Rooms** tab click on the Join button for the room(s) you want -#### Related topics - -- [Alert Notifications](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx) -- [Alerts Configuration](https://github.com/netdata/netdata/blob/master/health/README.md) -- [Add webhook notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-webhook-notification-configuration.md) -- [Add Discord notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-discord-notification-configuration.md) -- [Add Slack notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-slack-notification-configuration.md) -- [Add PagerDuty notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md) diff --git a/docs/cloud/alerts-notifications/notifications.mdx b/docs/cloud/alerts-notifications/notifications.md index e594606e..94cd2dc3 100644 --- a/docs/cloud/alerts-notifications/notifications.mdx +++ b/docs/cloud/alerts-notifications/notifications.md @@ -1,14 +1,4 @@ ---- -title: "Alert notifications" -description: >- - "Configure Netdata Cloud to send notifications to your team whenever any node on your infrastructure - triggers a pre-configured or custom alert threshold." -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx" -sidebar_label: "Alert notifications" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" ---- +# Cloud alert notifications import Callout from '@site/src/components/Callout' @@ -17,11 +7,11 @@ unreachable state. By enabling notifications, you ensure no alert, on any node i you or your team. Having this information centralized helps you: -* Have a clear view of the health across your infrastructure, [seeing all a alerts in one place](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/view-active-alerts.mdx) +* Have a clear view of the health across your infrastructure, seeing all alerts in one place. * Easily [setup your alert notification process](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/manage-notification-methods.md): methods to use and where to use them, filtering rules, etc. -* Quickly troubleshoot using [Metric Correlations](https://github.com/netdata/netdata/blob/master/docs/cloud/insights/metrics-correlations.md) -or [Anomaly Advisor](https://github.com/netdata/netdata/blob/master/docs/cloud/insights/anomaly-advisor.mdx) +* Quickly troubleshoot using [Metric Correlations](https://github.com/netdata/netdata/blob/master/docs/cloud/insights/metric-correlations.md) +or [Anomaly Advisor](https://github.com/netdata/netdata/blob/master/docs/cloud/insights/anomaly-advisor.md) If a node is getting disconnected often or has many alerts, we protect you and your team from alert fatigue by sending you a flood protection notification. Getting one of these notifications is a good signal of health or performance issues @@ -37,7 +27,7 @@ Centralized alert notifications from Netdata Cloud is a independent process from Netdata](https://github.com/netdata/netdata/blob/master/docs/monitor/enable-notifications.md). You can enable one or the other, or both, based on your needs. However, the alerts you see in Netdata Cloud are based on those streamed from your Netdata-monitoring nodes. If you want to tweak or add new alert that you see in Netdata Cloud, and receive via centralized alert notifications, you must -[configure](https://github.com/netdata/netdata/blob/master/docs/monitor/configure-alarms.md) each node's alert watchdog. +[configure](https://github.com/netdata/netdata/blob/master/health/REFERENCE.md) each node's alert watchdog. </Callout> @@ -80,7 +70,7 @@ For **System** notification methods, the destination of the channel will be a ta These notification methods allow for fine-grain rule settings to be done by administrators and more than one configuration can exist for them since. You can specify different targets depending on Rooms or Notification level settings. -Some examples of such notification methods are: Webhook, PagerDuty, slack. +Some examples of such notification methods are: Webhook, PagerDuty, Slack. #### Service classification @@ -97,7 +87,7 @@ These are: webhook ##### Business Notification methods classified as Business are only available for **Business** plans -These are: PagerDuty, slack +These are: PagerDuty, Slack, Opsgenie ## Flood protection @@ -129,27 +119,3 @@ within Cloud's embedded dashboards. Here's an example email notification for the `ram_available` chart, which is in a critical state: ![Screenshot of an alarm notification email from Netdata Cloud](https://user-images.githubusercontent.com/1153921/87461878-e933c480-c5c3-11ea-870b-affdb0801854.png) - -## What's next? - -Netdata Cloud's alarm notifications feature leverages the alarms configuration on each node in your infrastructure. If -you'd like to tweak any of these alarms, or even add new ones based on your needs, read our [health -quickstart](https://github.com/netdata/netdata/blob/master/docs/monitor/configure-alarms.md). - -You can also [view active alarms](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/view-active-alerts.mdx) in Netdata Cloud for an instant -visualization of the health of your infrastructure. - -### Related Topics - -#### **Related Concepts** -- [Rooms](https://github.com/netdata/netdata/blob/master/docs/cloud/war-rooms.md) -- [Metric Correlations](https://github.com/netdata/netdata/blob/master/docs/cloud/insights/metrics-correlations.md) -- [Anomaly Advisor](https://github.com/netdata/netdata/blob/master/docs/cloud/insights/anomaly-advisor.mdx) - -#### Related Tasks -- [View Active alarms](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/view-active-alerts.mdx) -- [Manage notification methods](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/manage-notification-methods.md) -- [Add webhook notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-webhook-notification-configuration.md) -- [Add Discord notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-discord-notification-configuration.md) -- [Add Slack notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-slack-notification-configuration.md) -- [Add PagerDuty notification configuration](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/add-pagerduty-notification-configuration.md) diff --git a/docs/cloud/alerts-notifications/smartboard.mdx b/docs/cloud/alerts-notifications/smartboard.mdx deleted file mode 100644 index b9240ce4..00000000 --- a/docs/cloud/alerts-notifications/smartboard.mdx +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: "Alerts smartboard" -description: "" -type: "reference" -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/smartboard.mdx" -sidebar_label: "Alerts smartboard" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" ---- - -The Alerts view gives you a high level of availability and performance information for every node you're -monitoring with Netdata Cloud. We expect it to become the "home base" for many Netdata Cloud users who want to instantly -understand what's going on with their infrastructure and exactly where issues might be. - -The Alerts view is available entirely for free to all users and for any number of nodes. - -## Alerts table and filtering - -The Alerts view shows all active alerts in your War Room, including the alert's name, the most recent value, a -timestamp of when it became active, and the relevant node. - -You can use the checkboxes in the filter pane on the right side of the screen to filter the alerts displayed in the -table -by Status, Class, Type & Componenet, Role, Operating System, or Node. - -Click on any of the alert names to see the alert. - -## View active alerts - -In the `Active` subtab, you can see exactly how many **critical** and **warning** alerts are active across your nodes. - -## View configured alerts - -You can view all the configured alerts on all the agents that belong to a War Room in the `Alert Configurations` subtab. -From within the Alerts view, you can click the `Alert Configurations` subtab to see a high level view of the states of -the alerts on the nodes within this War Room and drill down to the node level where each alert is configured with their -latest status. - - - - - - - - diff --git a/docs/cloud/alerts-notifications/view-active-alerts.mdx b/docs/cloud/alerts-notifications/view-active-alerts.mdx deleted file mode 100644 index 1035b682..00000000 --- a/docs/cloud/alerts-notifications/view-active-alerts.mdx +++ /dev/null @@ -1,76 +0,0 @@ ---- -title: "View active alerts" -description: >- - "Track the health of your infrastructure in one place by taking advantage of the powerful health monitoring - watchdog running on every node." -type: "how-to" -custom_edit_url: "https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/view-active-alerts.mdx" -sidebar_label: "View active alerts" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Operations/Alerts" ---- - -Netdata Cloud receives information about active alerts on individual nodes in your infrastructure and updates the -interface based on those status changes. - -Netdata Cloud doesn't produce alerts itself but rather receives and aggregates alerts from each node in your -infrastructure based on their configuration. Every node comes with hundreds of pre-configured alerts that have been -tested by Netdata's community of DevOps engineers and SREs, but you may want to customize existing alerts or create new -ones entirely. - -Read our doc on [health alerts](https://github.com/netdata/netdata/blob/master/docs/monitor/configure-alarms.md) to -learn how to tweak existing alerts or create new -health entities based on the specific needs of your infrastructure. By taking charge of alert configuration, you'll -ensure Netdata Cloud always delivers the most relevant alerts about the well-being of your nodes. - -## View all active alerts - -The [Alerts Smartboard](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/smartboard.mdx) -provides a high-level interface for viewing the number of critical or warning alerts and where they are in your -infrastructure. - -![The Alerts Smartboard](https://user-images.githubusercontent.com/1153921/119025635-2fcb1b80-b959-11eb-9fdb-7f1a082f43c5.png) - -Click on the **Alerts** tab in any War Room to open the Smartboard. Alternatively, click on any of the alert badges in -the [Nodes view](https://github.com/netdata/netdata/blob/master/docs/cloud/visualize/nodes.md) to jump to the Alerts -Smartboard. - -From here, filter active alerts using the **critical** or **warning** boxes, or hover over a box in -the [nodes map](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/smartboard.mdx#nodes-map) -to see a -popup node-specific alert information. - -## View alerts in context with charts - -If you click on any of the alerts, either in a nodes map popup or the alerts table, Netdata Cloud navigates you to the -single-node dashboard and scrolls to the relevant chart. Netdata Cloud also draws a highlight and the value at the -moment your node triggered this alert. - -![An alert in context with charts and dimensions](https://user-images.githubusercontent.com/1153921/119039593-4a0cf580-b969-11eb-840c-4ecb123df9f5.png) - -You can -then [select this area](https://github.com/netdata/netdata/blob/master/docs/dashboard/interact-charts.mdx#select) -with `Alt/⌘ + mouse selection` to highlight the alerted timeframe while you explore other charts for root cause -analysis. - -Or, select the area and -run [Metric Correlations](https://github.com/netdata/netdata/blob/master/docs/cloud/insights/metric-correlations.md) to -filter the single-node -dashboard to only those charts most likely to be connected to the alert. - -## What's next? - -Learn more about the features of the Smartboard in -its [reference](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/smartboard.mdx) -doc. To stay notified of active alerts, -enable [centralized alert notifications](https://github.com/netdata/netdata/blob/master/docs/cloud/alerts-notifications/notifications.mdx) -from Netdata Cloud. - -If you're through with setting up alerts, it might be time -to [invite your team](https://github.com/netdata/netdata/blob/master/docs/cloud/manage/invite-your-team.md). - -Check out our recommendations on organizing and -using [Spaces](https://github.com/netdata/netdata/blob/master/docs/cloud/spaces.md) and -[War Rooms](https://github.com/netdata/netdata/blob/master/docs/cloud/war-rooms.md) to streamline your processes once -you find an alert in Netdata Cloud. |