Remove discontinued Hangouts and StackPulse notification methods (#16041)
Fotis Voutsas committed
Sep 26, 2023 at 10:45 UTC
72f32b83e9bc55163f272ba41add88638f9175f8
9 files changed
+1
-422
README.md
+1
-1
@@ -180,7 +180,7 @@ navigate to `http://NODE:19999`, replacing `NODE` with the IP address or hostnam
180
181
Netdata comes with hundreds of pre-configured alerts, that automatically check your metrics, immediately after they start getting collected.
182
183
- Netdata can dispatch alert notifications to multiple third party systems, including: `email`, `Alerta`, `AWS SNS`, `Discord`, `Dynatrace`, `flock`, `gotify`, `IRC`, `Matrix`, `MessageBird`, `Microsoft Teams`, `ntfy`, `OPSgenie`, `PagerDuty`, `Prowl`, `PushBullet`, `PushOver`, `RocketChat`, `Slack`, `SMS tools`, `StackPulse`, `Syslog`, `Telegram`, `Twilio`.
183
+ Netdata can dispatch alert notifications to multiple third party systems, including: `email`, `Alerta`, `AWS SNS`, `Discord`, `Dynatrace`, `flock`, `gotify`, `IRC`, `Matrix`, `MessageBird`, `Microsoft Teams`, `ntfy`, `OPSgenie`, `PagerDuty`, `Prowl`, `PushBullet`, `PushOver`, `RocketChat`, `Slack`, `SMS tools`, `Syslog`, `Telegram`, `Twilio`.
184
185
By default, Netdata will send e-mail notifications, if there is a configured MTA on the system.
186
docs/monitor/enable-notifications.md
-1
@@ -83,7 +83,6 @@ notification platform.
83
- [**Rocket.Chat**](https://github.com/netdata/netdata/blob/master/health/notifications/rocketchat/README.md)
84
- [**Slack**](https://github.com/netdata/netdata/blob/master/health/notifications/slack/README.md)
85
- [**SMS Server Tools 3**](https://github.com/netdata/netdata/blob/master/health/notifications/smstools3/README.md)
86
-- [**StackPulse**](https://github.com/netdata/netdata/blob/master/health/notifications/stackpulse/README.md)
86
- [**Syslog**](https://github.com/netdata/netdata/blob/master/health/notifications/syslog/README.md)
87
- [**Telegram**](https://github.com/netdata/netdata/blob/master/health/notifications/telegram/README.md)
88
- [**Twilio**](https://github.com/netdata/netdata/blob/master/health/notifications/twilio/README.md)
health/notifications/Makefile.am
-2
@@ -32,7 +32,6 @@ include discord/Makefile.inc
32
include email/Makefile.inc
33
include flock/Makefile.inc
34
include gotify/Makefile.inc
35
-include hangouts/Makefile.inc
35
include irc/Makefile.inc
36
include kavenegar/Makefile.inc
37
include messagebird/Makefile.inc
@@ -45,7 +44,6 @@ include pushover/Makefile.inc
44
include rocketchat/Makefile.inc
45
include slack/Makefile.inc
46
include smstools3/Makefile.inc
48
-include stackpulse/Makefile.inc
47
include syslog/Makefile.inc
48
include telegram/Makefile.inc
49
include twilio/Makefile.inc
health/notifications/alarm-notify.sh.in
-194
@@ -34,9 +34,7 @@
34
# - syslog messages by @Ferroin
35
# - Microsoft Team notification by @tioumen
36
# - RocketChat notifications by @Hermsi1337 #3777
37
-# - Google Hangouts Chat notifications by @EnzoAkira and @hendrikhofstadt
37
# - Dynatrace Event by @illumine
39
-# - Stackpulse Event by @thiagoftsm
38
# - Opsgenie by @thiaoftsm #9858
39
# - Gotify by @coffeegrind123
40
# - ntfy.sh by @Dim-P
@@ -174,7 +172,6 @@ irc
172
awssns
173
rocketchat
174
sms
177
-hangouts
175
dynatrace
176
matrix
177
ntfy
@@ -390,10 +387,6 @@ IRC_REALNAME=
387
IRC_NETWORK=
388
IRC_PORT=6667
389
393
-# hangouts configs
394
-declare -A HANGOUTS_WEBHOOK_URI
395
-declare -A HANGOUTS_WEBHOOK_THREAD
396
-
390
# dynatrace configs
391
DYNATRACE_SPACE=
392
DYNATRACE_SERVER=
@@ -403,9 +396,6 @@ DYNATRACE_ANNOTATION_TYPE=
396
DYNATRACE_EVENT=
397
SEND_DYNATRACE=
398
406
-# stackpulse configs
407
-STACKPULSE_WEBHOOK=
408
-
399
# gotify configs
400
GOTIFY_APP_URL=
401
GOTIFY_APP_TOKEN=
@@ -635,9 +625,6 @@ filter_recipient_by_criticality() {
625
# check irc
626
[ -z "${IRC_NETWORK}" ] && SEND_IRC="NO"
627
638
-# check hangouts
639
-[ ${#HANGOUTS_WEBHOOK_URI[@]} -eq 0 ] && SEND_HANGOUTS="NO"
640
-
628
# check fleep
629
#shellcheck disable=SC2153
630
{ [ -z "${FLEEP_SERVER}" ] || [ -z "${FLEEP_SENDER}" ]; } && SEND_FLEEP="NO"
@@ -661,9 +648,6 @@ filter_recipient_by_criticality() {
648
# check ntfy
649
[ -z "${DEFAULT_RECIPIENT_NTFY}" ] && SEND_NTFY="NO"
650
664
-# check stackpulse
665
-[ -z "${STACKPULSE_WEBHOOK}" ] && SEND_STACKPULSE="NO"
666
-
651
# check msteams
652
[ -z "${MSTEAMS_WEBHOOK_URL}" ] && SEND_MSTEAMS="NO"
653
@@ -692,12 +676,10 @@ if [ "${SEND_PUSHOVER}" = "YES" ] ||
676
[ "${SEND_KAFKA}" = "YES" ] ||
677
[ "${SEND_FLEEP}" = "YES" ] ||
678
[ "${SEND_PROWL}" = "YES" ] ||
695
- [ "${SEND_HANGOUTS}" = "YES" ] ||
679
[ "${SEND_MATRIX}" = "YES" ] ||
680
[ "${SEND_CUSTOM}" = "YES" ] ||
681
[ "${SEND_MSTEAMS}" = "YES" ] ||
682
[ "${SEND_DYNATRACE}" = "YES" ] ||
700
- [ "${SEND_STACKPULSE}" = "YES" ] ||
683
[ "${SEND_OPSGENIE}" = "YES" ] ||
684
[ "${SEND_GOTIFY}" = "YES" ] ||
685
[ "${SEND_NTFY}" = "YES" ]; then
@@ -724,11 +706,9 @@ if [ "${SEND_PUSHOVER}" = "YES" ] ||
706
SEND_KAFKA="NO"
707
SEND_FLEEP="NO"
708
SEND_PROWL="NO"
727
- SEND_HANGOUTS="NO"
709
SEND_MATRIX="NO"
710
SEND_CUSTOM="NO"
711
SEND_DYNATRACE="NO"
731
- SEND_STACKPULSE="NO"
712
SEND_OPSGENIE="NO"
713
SEND_GOTIFY="NO"
714
SEND_NTFY="NO"
@@ -873,13 +853,11 @@ for method in "${SEND_EMAIL}" \
853
"${SEND_MATRIX}" \
854
"${SEND_CUSTOM}" \
855
"${SEND_IRC}" \
876
- "${SEND_HANGOUTS}" \
856
"${SEND_AWSSNS}" \
857
"${SEND_SYSLOG}" \
858
"${SEND_SMS}" \
859
"${SEND_MSTEAMS}" \
860
"${SEND_DYNATRACE}" \
882
- "${SEND_STACKPULSE}" \
861
"${SEND_OPSGENIE}" \
862
"${SEND_GOTIFY}" \
863
"${SEND_NTFY}" ; do
@@ -2122,117 +2100,6 @@ send_sms() {
2100
return 1
2101
}
2102
2125
-# -----------------------------------------------------------------------------
2126
-# hangouts sender
2127
-
2128
-send_hangouts() {
2129
- local rooms="${1}" httpcode sent=0 room color payload webhook thread
2130
-
2131
- [ "${SEND_HANGOUTS}" != "YES" ] && return 1
2132
-
2133
- case "${status}" in
2134
- WARNING) color="#ffa700" ;;
2135
- CRITICAL) color="#d62d20" ;;
2136
- CLEAR) color="#008744" ;;
2137
- *) color="#777777" ;;
2138
- esac
2139
-
2140
- for room in ${rooms}; do
2141
- if [ -z "${HANGOUTS_WEBHOOK_URI[$room]}" ] ; then
2142
- info "Can't send Hangouts notification for: ${host} ${chart}.${name} to room ${room}. HANGOUTS_WEBHOOK_URI[$room] not defined"
2143
- else
2144
- if [ -n "${HANGOUTS_WEBHOOK_THREAD[$room]}" ]; then
2145
- thread="\"name\" : \"${HANGOUTS_WEBHOOK_THREAD[$room]}\""
2146
- fi
2147
- webhook="${HANGOUTS_WEBHOOK_URI[$room]}"
2148
- payload="$(
2149
- cat <<EOF
2150
- {
2151
- "cards": [
2152
- {
2153
- "header": {
2154
- "title": "Netdata on ${host}",
2155
- "imageUrl": "${images_base_url}/images/banner-icon-144x144.png",
2156
- "imageStyle": "IMAGE"
2157
- },
2158
- "sections": [
2159
- {
2160
- "header": "<b>${host}</b>",
2161
- "widgets": [
2162
- {
2163
- "keyValue": {
2164
- "topLabel": "Status Message",
2165
- "content": "<b>${status_message}</b>",
2166
- "contentMultiline": "true",
2167
- "iconUrl": "${image}",
2168
- "onClick": {
2169
- "openLink": {
2170
- "url": "${goto_url}"
2171
- }
2172
- }
2173
- }
2174
- },
2175
- {
2176
- "keyValue": {
2177
- "topLabel": "${chart} | ${family}",
2178
- "content": "<font color=${color}>${alarm}</font>",
2179
- "contentMultiline": "true"
2180
- }
2181
- }
2182
- ]
2183
- },
2184
- {
2185
- "widgets": [
2186
- {
2187
- "textParagraph": {
2188
- "text": "<font color=\"#0057e7\">@ ${date}\n<b>${info}</b></font>"
2189
- }
2190
- }
2191
- ]
2192
- },
2193
- {
2194
- "widgets": [
2195
- {
2196
- "buttons": [
2197
- {
2198
- "textButton": {
2199
- "text": "Go to ${host}",
2200
- "onClick": {
2201
- "openLink": {
2202
- "url": "${goto_url}"
2203
- }
2204
- }
2205
- }
2206
- }
2207
- ]
2208
- }
2209
- ]
2210
- }
2211
- ]
2212
- }
2213
- ],
2214
- "thread": {
2215
- $thread
2216
- }
2217
- }
2218
-EOF
2219
- )"
2220
-
2221
- httpcode=$(docurl -H "Content-Type: application/json" -X POST -d "${payload}" "${webhook}")
2222
-
2223
- if [ "${httpcode}" = "200" ]; then
2224
- info "sent hangouts notification for: ${host} ${chart}.${name} is ${status} to '${room}'"
2225
- sent=$((sent + 1))
2226
- else
2227
- error "failed to send hangouts notification for: ${host} ${chart}.${name} is ${status} to '${room}', with HTTP response status code ${httpcode}."
2228
- fi
2229
- fi
2230
- done
2231
-
2232
- [ ${sent} -gt 0 ] && return 0
2233
-
2234
- return 1
2235
-}
2103
2104
# -----------------------------------------------------------------------------
2105
# Dynatrace sender
@@ -2283,51 +2150,6 @@ EOF
2150
fi
2151
}
2152
2286
-
2287
-# -----------------------------------------------------------------------------
2288
-# Stackpulse sender
2289
-
2290
-send_stackpulse() {
2291
- local payload httpcode oldv currv
2292
- [ "${SEND_STACKPULSE}" != "YES" ] && return 1
2293
-
2294
- # We are sending null when values are nan to avoid errors while JSON message is parsed
2295
- [ "${old_value}" != "nan" ] && oldv="${old_value}" || oldv="null"
2296
- [ "${value}" != "nan" ] && currv="${value}" || currv="null"
2297
-
2298
- payload=$(cat <<EOF
2299
- {
2300
- "Node" : "${host}",
2301
- "Chart" : "${chart}",
2302
- "OldValue" : ${oldv},
2303
- "Value" : ${currv},
2304
- "Units" : "${units}",
2305
- "OldStatus" : "${old_status}",
2306
- "Status" : "${status}",
2307
- "Alarm" : "${name}",
2308
- "Date": ${when},
2309
- "Duration": ${duration},
2310
- "NonClearDuration": ${non_clear_duration},
2311
- "Description" : "${status_message}, ${info}",
2312
- "CalcExpression" : "${calc_expression}",
2313
- "CalcParamValues" : "${calc_param_values}",
2314
- "TotalWarnings" : "${total_warnings}",
2315
- "TotalCritical" : "${total_critical}",
2316
- "ID" : ${alarm_id}
2317
- }
2318
-EOF
2319
-)
2320
-
2321
- httpcode=$(docurl -X POST -H "Content-Type: application/json" -d "${payload}" ${STACKPULSE_WEBHOOK})
2322
- if [ "${httpcode}" = "200" ]; then
2323
- info "sent stackpulse notification for: ${host} ${chart}.${name} is ${status}"
2324
- else
2325
- error "failed to send stackpulse notification for: ${host} ${chart}.${name} is ${status}, with HTTP response status code ${httpcode}."
2326
- return 1
2327
- fi
2328
-
2329
- return 0
2330
-}
2153
# -----------------------------------------------------------------------------
2154
# Opsgenie sender
2155
@@ -2631,15 +2453,6 @@ raised_for_html=
2453
send_slack "${SLACK_WEBHOOK_URL}" "${to_slack}"
2454
SENT_SLACK=$?
2455
2634
-# -----------------------------------------------------------------------------
2635
-# send the hangouts notification
2636
-
2637
-# hangouts aggregates posts from the same room
2638
-# so we use "${host} ${status}" as the room, to make them diff
2639
-
2640
-send_hangouts "${to_hangouts}"
2641
-SENT_HANGOUTS=$?
2642
-
2456
# -----------------------------------------------------------------------------
2457
# send the Microsoft Teams notification
2458
@@ -3665,11 +3478,6 @@ SENT_EMAIL=$?
3478
send_dynatrace "${host}" "${chart}" "${name}" "${status}"
3479
SENT_DYNATRACE=$?
3480
3668
-# -----------------------------------------------------------------------------
3669
-# send the EVENT to Stackpulse
3670
-send_stackpulse
3671
-SENT_STACKPULSE=$?
3672
-
3481
# -----------------------------------------------------------------------------
3482
# send messages to Opsgenie
3483
send_opsgenie
@@ -3691,7 +3499,6 @@ for state in "${SENT_EMAIL}" \
3499
"${SENT_PUSHOVER}" \
3500
"${SENT_TELEGRAM}" \
3501
"${SENT_SLACK}" \
3694
- "${SENT_HANGOUTS}" \
3502
"${SENT_ROCKETCHAT}" \
3503
"${SENT_ALERTA}" \
3504
"${SENT_FLOCK}" \
@@ -3713,7 +3520,6 @@ for state in "${SENT_EMAIL}" \
3520
"${SENT_SMS}" \
3521
"${SENT_MSTEAMS}" \
3522
"${SENT_DYNATRACE}" \
3716
- "${SENT_STACKPULSE}" \
3523
"${SENT_OPSGENIE}" \
3524
"${SENT_GOTIFY}" \
3525
"${SENT_NTFY}"; do
health/notifications/hangouts/Makefile.inc
deleted
-12
@@ -1,12 +0,0 @@
1
-# SPDX-License-Identifier: GPL-3.0-or-later
2
-
3
-# THIS IS NOT A COMPLETE Makefile
4
-# IT IS INCLUDED BY ITS PARENT'S Makefile.am
5
-# IT IS REQUIRED TO REFERENCE ALL FILES RELATIVE TO THE PARENT
6
-
7
-# install these files
8
-dist_noinst_DATA += \
9
- hangouts/README.md \
10
- hangouts/Makefile.inc \
11
- $(NULL)
12
-
health/notifications/hangouts/README.md
deleted
-59
@@ -1,59 +0,0 @@
1
-<!--
2
-title: "Google Hangouts agent alert notifications"
3
-description: "Send alerts to Send notifications to Google Hangouts any time an anomaly or performance issue strikes a node in your infrastructure."
4
-sidebar_label: "Google Hangouts"
5
-custom_edit_url: "https://github.com/netdata/netdata/edit/master/health/notifications/hangouts/README.md"
6
-learn_status: "Published"
7
-learn_topic_type: "Tasks"
8
-learn_rel_path: "Integrations/Notify/Agent alert notifications"
9
-learn_autogeneration_metadata: "{'part_of_cloud': False, 'part_of_agent': True}"
10
--->
11
-
12
-# Google Hangouts agent alert notifications
13
-
14
-[Google Hangouts](https://hangouts.google.com/) is a cross-platform messaging app developed by Google. You can configure
15
-Netdata to send alert notifications to a Hangouts room in order to stay aware of possible health or performance issues
16
-on your nodes. Here's an example of the notification in action:
17
-
18
-
19
-
20
-To receive notifications in Google Hangouts, you need the following in your Hangouts setup:
21
-
22
-1. One or more rooms.
23
-2. An **incoming webhook** for each room.
24
-
25
-Follow [Google's documentation](https://developers.google.com/hangouts/chat/how-tos/webhooks) to create an incoming
26
-webhook for each room you want to send Netdata notifications to.
27
-
28
-Set the webhook URIs and room names in `health_alarm_notify.conf`. To edit it on your system, run
29
-`/etc/netdata/edit-config health_alarm_notify.conf`):
30
-
31
-## Threads (optional)
32
-
33
-Instead, to receive alerts on different threads, Netdata allows you to concentrate them inside a unique thread when you
34
-set the variable `HANGOUTS_WEBHOOK_THREAD[NAME]`.
35
-
36
-```
37
-#------------------------------------------------------------------------------
38
-# hangouts (google hangouts chat) global notification options
39
-# enable/disable sending hangouts notifications
40
-SEND_HANGOUTS="YES"
41
-# On Hangouts, in the room you choose, create an incoming webhook,
42
-# copy the link and paste it below and also identify the room name.
43
-# Without it, netdata cannot send hangouts notifications to that room.
44
-# HANGOUTS_WEBHOOK_URI[ROOM_NAME]="URLforroom1"
45
-HANGOUTS_WEBHOOK_URI[systems]="https://chat.googleapis.com/v1/spaces/AAAAXXXXXXX/..."
46
-HANGOUTS_WEBHOOK_URI[development]="https://chat.googleapis.com/v1/spaces/AAAAYYYYY/..."
47
-# On Hangouts, copy a thread link and change the values for space and thread
48
-# HANGOUTS_WEBHOOK_THREAD[systems]="spaces/AAAAXXXXXXX/threads/XXXXXXXXXXX"
49
-# if a DEFAULT_RECIPIENT_HANGOUTS are not configured,
50
-# notifications wouldn't be send to hangouts rooms.
51
-# DEFAULT_RECIPIENT_HANGOUTS="systems development|critical"
52
-DEFAULT_RECIPIENT_HANGOUTS="sysadmin devops alerts|critical"
53
-```
54
-
55
-You can define multiple rooms like this: `sysadmin devops alerts|critical`.
56
-
57
-The keywords `sysadmin`, `devops`, and `alerts` are Hangouts rooms.
58
-
59
-
health/notifications/health_alarm_notify.conf
-56
@@ -21,7 +21,6 @@
21
# - messages to a local or remote syslog daemon
22
# - message to Microsoft Teams (through webhook)
23
# - message to Rocket.Chat (through webhook)
24
-# - message to Google Hangouts Chat (through webhook)
24
# - push notifications to your mobile phone or desktop (ntfy.sh)
25
#
26
# The 'to' line given at netdata alarms defines a *role*, so that many
@@ -185,7 +184,6 @@ sendsms=""
184
# kavenegar : "09155555555 09177777777|critical"
185
# pd : "<pd_service_key_1> <pd_service_key_2>|critical"
186
# irc : "<irc_channel_1> <irc_channel_2>|critical"
188
-# hangouts : "alarms disasters|critical"
187
#
188
# You can append multiple modifiers. In this example, recipient receives
189
# notifications for critical alarms and following status changes except clear
@@ -279,15 +277,6 @@ DYNATRACE_EVENT="CUSTOM_INFO"
277
278
DEFAULT_RECIPIENT_DYNATRACE=""
279
282
-#------------------------------------------------------------------------------
283
-# Stackpulse global notification options
284
-SEND_STACKPULSE="YES"
285
-
286
-# Webhook
287
-STACKPULSE_WEBHOOK=""
288
-
289
-DEFAULT_RECIPIENT_STACKPULSE=""
290
-
280
#------------------------------------------------------------------------------
281
# gotify global notification options
282
SEND_GOTIFY="YES"
@@ -308,27 +297,6 @@ OPSGENIE_API_URL=""
297
298
DEFAULT_RECIPIENT_OPSGENIE=""
299
311
-#------------------------------------------------------------------------------
312
-# hangouts (google hangouts chat) global notification options
313
-
314
-# enable/disable sending hangouts notifications
315
-SEND_HANGOUTS="YES"
316
-
317
-# On Hangouts, in the room you choose, create an incoming webhook,
318
-# copy the link and paste it below and also give it a room name.
319
-# Without it, netdata cannot send hangouts notifications to that room.
320
-# You will then use the same room name in your recipients list. For each URI, you need
321
-# HANGOUTS_WEBHOOK_URI[room_name]="WEBHOOK_URI"
322
-# e.g. to define systems and development rooms/recipients:
323
-# HANGOUTS_WEBHOOK_URI[systems]="URLforroom1"
324
-# HANGOUTS_WEBHOOK_URI[development]="URLforroom2"
325
-
326
-# if a DEFAULT_RECIPIENT_HANGOUTS is not configured,
327
-# notifications won't be send to hangouts rooms. For the example above,
328
-# a valid recipients list is the following
329
-# DEFAULT_RECIPIENT_HANGOUTS="systems development|critical"
330
-DEFAULT_RECIPIENT_HANGOUTS=""
331
-
300
#------------------------------------------------------------------------------
301
# pushover (pushover.net) global notification options
302
@@ -967,8 +935,6 @@ custom_sender() {
935
936
# role_recipients_email[sysadmin]="${DEFAULT_RECIPIENT_EMAIL}"
937
970
-# role_recipients_hangouts[sysadmin]="${DEFAULT_RECIPIENT_HANGOUTS}"
971
-
938
# role_recipients_pushover[sysadmin]="${DEFAULT_RECIPIENT_PUSHOVER}"
939
940
# role_recipients_pushbullet[sysadmin]="${DEFAULT_RECIPIENT_PUSHBULLET}"
@@ -1015,8 +981,6 @@ custom_sender() {
981
982
# role_recipients_matrix[sysadmin]="${DEFAULT_RECIPIENT_MATRIX}"
983
1018
-# role_recipients_stackpulse[sysadmin]="${DEFAULT_RECIPIENT_STACKPULSE}"
1019
-
984
# role_recipients_gotify[sysadmin]="${DEFAULT_RECIPIENT_GOTIFY}"
985
986
# role_recipients_ntfy[sysadmin]="${DEFAULT_RECIPIENT_NTFY}"
@@ -1026,8 +990,6 @@ custom_sender() {
990
991
# role_recipients_email[domainadmin]="${DEFAULT_RECIPIENT_EMAIL}"
992
1029
-# role_recipients_hangouts[domainadmin]="${DEFAULT_RECIPIENT_HANGOUTS}"
1030
-
993
# role_recipients_pushover[domainadmin]="${DEFAULT_RECIPIENT_PUSHOVER}"
994
995
# role_recipients_pushbullet[domainadmin]="${DEFAULT_RECIPIENT_PUSHBULLET}"
@@ -1076,8 +1038,6 @@ custom_sender() {
1038
1039
# role_recipients_matrix[domainadmin]="${DEFAULT_RECIPIENT_MATRIX}"
1040
1079
-# role_recipients_stackpulse[domainadmin]="${DEFAULT_RECIPIENT_STACKPULSE}"
1080
-
1041
# role_recipients_gotify[domainadmin]="${DEFAULT_RECIPIENT_GOTIFY}"
1042
1043
# role_recipients_ntfy[domainadmin]="${DEFAULT_RECIPIENT_NTFY}"
@@ -1088,8 +1048,6 @@ custom_sender() {
1048
1049
# role_recipients_email[dba]="${DEFAULT_RECIPIENT_EMAIL}"
1050
1091
-# role_recipients_hangouts[dba]="${DEFAULT_RECIPIENT_HANGOUTS}"
1092
-
1051
# role_recipients_pushover[dba]="${DEFAULT_RECIPIENT_PUSHOVER}"
1052
1053
# role_recipients_pushbullet[dba]="${DEFAULT_RECIPIENT_PUSHBULLET}"
@@ -1138,8 +1096,6 @@ custom_sender() {
1096
1097
# role_recipients_matrix[dba]="${DEFAULT_RECIPIENT_MATRIX}"
1098
1141
-# role_recipients_stackpulse[dba]="${DEFAULT_RECIPIENT_STACKPULSE}"
1142
-
1099
# role_recipients_gotify[dba]="${DEFAULT_RECIPIENT_GOTIFY}"
1100
1101
# role_recipients_ntfy[dba]="${DEFAULT_RECIPIENT_NTFY}"
@@ -1150,8 +1106,6 @@ custom_sender() {
1106
1107
# role_recipients_email[webmaster]="${DEFAULT_RECIPIENT_EMAIL}"
1108
1153
-# role_recipients_hangouts[webmaster]="${DEFAULT_RECIPIENT_HANGOUTS}"
1154
-
1109
# role_recipients_pushover[webmaster]="${DEFAULT_RECIPIENT_PUSHOVER}"
1110
1111
# role_recipients_pushbullet[webmaster]="${DEFAULT_RECIPIENT_PUSHBULLET}"
@@ -1200,8 +1154,6 @@ custom_sender() {
1154
1155
# role_recipients_matrix[webmaster]="${DEFAULT_RECIPIENT_MATRIX}"
1156
1203
-# role_recipients_stackpulse[webmaster]="${DEFAULT_RECIPIENT_STACKPULSE}"
1204
-
1157
# role_recipients_gotify[webmaster]="${DEFAULT_RECIPIENT_GOTIFY}"
1158
1159
# role_recipients_ntfy[webmaster]="${DEFAULT_RECIPIENT_NTFY}"
@@ -1212,8 +1164,6 @@ custom_sender() {
1164
1165
# role_recipients_email[proxyadmin]="${DEFAULT_RECIPIENT_EMAIL}"
1166
1215
-# role_recipients_hangouts[proxyadmin]="${DEFAULT_RECIPIENT_HANGOUTS}"
1216
-
1167
# role_recipients_pushover[proxyadmin]="${DEFAULT_RECIPIENT_PUSHOVER}"
1168
1169
# role_recipients_pushbullet[proxyadmin]="${DEFAULT_RECIPIENT_PUSHBULLET}"
@@ -1262,8 +1212,6 @@ custom_sender() {
1212
1213
# role_recipients_matrix[proxyadmin]="${DEFAULT_RECIPIENT_MATRIX}"
1214
1265
-# role_recipients_stackpulse[proxyadmin]="${DEFAULT_RECIPIENT_STACKPULSE}"
1266
-
1215
# role_recipients_gotify[proxyadmin]="${DEFAULT_RECIPIENT_GOTIFY}"
1216
1217
# role_recipients_ntfy[proxyadmin]="${DEFAULT_RECIPIENT_NTFY}"
@@ -1274,8 +1222,6 @@ custom_sender() {
1222
1223
# role_recipients_email[sitemgr]="${DEFAULT_RECIPIENT_EMAIL}"
1224
1277
-# role_recipients_hangouts[sitemgr]="${DEFAULT_RECIPIENT_HANGOUTS}"
1278
-
1225
# role_recipients_pushover[sitemgr]="${DEFAULT_RECIPIENT_PUSHOVER}"
1226
1227
# role_recipients_pushbullet[sitemgr]="${DEFAULT_RECIPIENT_PUSHBULLET}"
@@ -1322,8 +1268,6 @@ custom_sender() {
1268
1269
# role_recipients_matrix[sitemgr]="${DEFAULT_RECIPIENT_MATRIX}"
1270
1325
-# role_recipients_stackpulse[sitemgr]="${DEFAULT_RECIPIENT_STACKPULSE}"
1326
-
1271
# role_recipients_gotify[sitemgr]="${DEFAULT_RECIPIENT_GOTIFY}"
1272
1273
# role_recipients_ntfy[sitemgr]="${DEFAULT_RECIPIENT_NTFY}"
health/notifications/stackpulse/Makefile.inc
deleted
-12
@@ -1,12 +0,0 @@
1
-# SPDX-License-Identifier: GPL-3.0-or-later
2
-
3
-# THIS IS NOT A COMPLETE Makefile
4
-# IT IS INCLUDED BY ITS PARENT'S Makefile.am
5
-# IT IS REQUIRED TO REFERENCE ALL FILES RELATIVE TO THE PARENT
6
-
7
-# install these files
8
-dist_noinst_DATA += \
9
- stackpulse/README.md \
10
- stackpulse/Makefile.inc \
11
- $(NULL)
12
-
health/notifications/stackpulse/README.md
deleted
-85
@@ -1,85 +0,0 @@
1
-<!--
2
-title: "StackPulse agent alert notifications"
3
-description: "Send alerts to your StackPulse Netdata integration any time an anomaly or performance issue strikes a node in your infrastructure."
4
-sidebar_label: "StackPulse"
5
-custom_edit_url: "https://github.com/netdata/netdata/edit/master/health/notifications/stackpulse/README.md"
6
-learn_status: "Published"
7
-learn_topic_type: "Tasks"
8
-learn_rel_path: "Integrations/Notify/Agent alert notifications"
9
-learn_autogeneration_metadata: "{'part_of_cloud': False, 'part_of_agent': True}"
10
--->
11
-
12
-# StackPulse agent alert notifications
13
-
14
-[StackPulse](https://stackpulse.com/) is a software-as-a-service platform for site reliability engineering.
15
-It helps SREs, DevOps Engineers and Software Developers reduce toil and alert fatigue while improving reliability of
16
-software services by managing, analyzing and automating incident response activities.
17
-
18
-Sending Netdata alert notifications to StackPulse allows you to create smart automated response workflows
19
-(StackPulse playbooks) that will help you drive down your MTTD and MTTR by performing any of the following:
20
-
21
-- Enriching the incident with data from multiple sources
22
-- Performing triage actions and analyzing their results
23
-- Orchestrating incident management and notification flows
24
-- Performing automatic and semi-automatic remediation actions
25
-- Analyzing incident data and remediation patterns to improve reliability of your services
26
-
27
-To send the notification you need:
28
-
29
-1. Create a Netdata integration in the `StackPulse Administration Portal`, and copy the `Endpoint` URL.
30
-
31
-
32
-
33
-2. On your node, navigate to `/etc/netdata/` and run the following command:
34
-
35
-```sh
36
-$ ./edit-config health_alarm_notify.conf
37
-```
38
-
39
-3. Set the `STACKPULSE_WEBHOOK` variable to `Endpoint` URL you copied earlier:
40
-
41
-```
42
-SEND_STACKPULSE="YES"
43
-STACKPULSE_WEBHOOK="https://hooks.stackpulse.io/v1/webhooks/YOUR_UNIQUE_ID"
44
-```
45
-
46
-4. Now restart Netdata using `sudo systemctl restart netdata`, or the [appropriate
47
- method](https://github.com/netdata/netdata/blob/master/docs/configure/start-stop-restart.md) for your system. When your node creates an alert, you can see the
48
- associated notification on your StackPulse Administration Portal
49
-
50
-## React to alerts with playbooks
51
-
52
-StackPulse allow users to create `Playbooks` giving additional information about events that happen in specific
53
-scenarios. For example, you could create a Playbook that responds to a "low disk space" alert by compressing and
54
-cleaning up storage partitions with dynamic data.
55
-
56
-
57
-
58
-
59
-
60
-### Create Playbooks for Netdata alerts
61
-
62
-To create a Playbook, you need to access the StackPulse Administration Portal. After the initial setup, you need to
63
-access the **TRIGGER** tab to define the scenarios used to trigger the event. The following variables are available:
64
-
65
-- `Hostname`: The host that generated the event.
66
-- `Chart`: The name of the chart.
67
-- `OldValue` : The previous value of the alert.
68
-- `Value`: The current value of the alert.
69
-- `Units` : The units of the value.
70
-- `OldStatus` : The previous status: REMOVED, UNINITIALIZED, UNDEFINED, CLEAR, WARNING, CRITICAL.
71
-- `State`: The current alert status, the acceptable values are the same of `OldStatus`.
72
-- `Alarm` : The name of the alert, as given in Netdata's health.d entries.
73
-- `Date` : The timestamp this event occurred.
74
-- `Duration` : The duration in seconds of the previous alert state.
75
-- `NonClearDuration` : The total duration in seconds this is/was non-clear.
76
-- `Description` : A short description of the alert copied from the alert definition.
77
-- `CalcExpression` : The expression that was evaluated to trigger the alert.
78
-- `CalcParamValues` : The values of the parameters in the expression, at the time of the evaluation.
79
-- `TotalWarnings` : Total number of alerts in WARNING state.
80
-- `TotalCritical` : Total number of alerts in CRITICAL state.
81
-- `ID` : The unique id of the alert that generated this event.
82
-
83
-For more details how to create a scenario, take a look at the [StackPulse documentation](https://docs.stackpulse.io).
84
-
85
-