Defining Sinks¶
Robusta can send notifications to various destinations, called sinks.
A Simple Sink Configuration¶
Sinks are defined in Robusta's Helm chart, using the sinksConfig value.
For example, lets add a Microsoft Teams Sink:
sinksConfig:
- ms_teams_sink:                  # sink type
    name: my_teams_sink           # name that uniquely identifies this sink in Robusta
    webhook_url: <placeholder>    # the webhook URL for MSTeams - each sink has different parameters like this
For all options, refer to All Sink Options.
Defining Multiple Sinks¶
You can define multiple sinks. By default, notifications will be sent to all of them.
In the following example, we define a Slack sink and a MS Teams sink without any routing rules, so both sinks receive all notifications:
sinksConfig:
- slack_sink:
    name: my_slack_sink
    slack_channel: my-channel
    api_key: secret-key
- ms_teams_sink:
    name: my_teams_sink
    webhook_url: <placeholder>
To selectively send notifications to different sinks, refer to routing (scopes).
All Sink Options¶
Here is an example showing common sink options:
sinksConfig:
- slack_sink:                     # sink type
    name: my_sink_name            # name that uniquely identifies this sink in Robusta
    scope: {}                     # optional - filter notifications sent to this sink
    activity: {}                  # optional - enable/disable sink according to time of day/week
    stop: false                   # optional - stop notifications from continuing to subsequent sinks
    grouping: {}                  # optional - use grouping to reduce the number of notifications (i.e. group into slack threads)
    default: true                 # optional - disable this sink by default
    # sink-specific parameters - e.g. for Slack, some options are shown below
    # api_key: xoxb-112...
    # slack_channel: general-alerts
Description of each option:
Parameter Name  | 
Description  | 
Default  | 
Docs  | 
|---|---|---|---|
name  | 
A unique name for this sink in Robusta  | 
||
scope  | 
Filters the notifications sent to this sink  | 
undefined - all notifications are sent (unless already sent a previou sink that set stop: true)  | 
|
activity  | 
Controls the hours this sink is active  | 
undefined - active all hours and all days of the week  | 
|
stop  | 
Should notifications continue to subsequent sinks?  | 
false - notification sent to this sink will continue to subsequent sinks  | 
|
grouping  | 
Currently only impacts the Slack sink, where it controls the creation of threads and the grouping of many notifications into one message  | 
undefined (disabled)  | 
|
default  | 
Is this sink enabled by default? When false, this sink only accepts notifications from customPlaybooks which explicitly named this sink (if scope is set, it will still filter those notifications)  | 
true - this sink is enabled by default  | 
|
sink specific parameters  | 
Parameters specific to the sink type, like api_key for Slack and webhook_url for MSTeams  | 
Ignoring Sinks Initialization Errors¶
By default, when Robusta fails to initialize any of the Sinks, it will not start.
On some scenarios, you may want to ignore Sinks initialization errors.
For example, if Robusta is not allowed to connect to Slack, but you still want to receive notifications on the Robusta UI.
In order to enable that, add the below to globalConfig in your generated_values.yaml file:
globalConfig:
  continue_on_sink_errors: True