content/kapacitor/v1/reference/event_handlers/pushover.md
Pushover is a service that sends instant push notifications to phone and tablets. Kapacitor can be configured to send alert messages to Pushover.
Configuration as well as default option values for the Pushover
event handler are set in your kapacitor.conf.
Below is an example configuration:
[pushover]
enabled = true
token = "mysupersecrettoken"
user-key = "myuserkey"
url = "https://api.pushover.net/1/messages.json"
enabledSet to true to enable the Pushover event handler.
tokenYour Pushover API token.
user-keyYour Pushover USER_TOKEN.
urlThe URL for the Pushover API. This should not need to be changed.
The following Pushover event handler options can be set in a
handler file or when using
.pushover() in a TICKscript.
| Name | Type | Description |
|---|---|---|
| device | string | Specific list of users' devices rather than all of a users' devices. Multiple device names may be separated by a comma. |
| title | string | The message title. By default, the app's name is used. |
| url | string | A supplementary URL to show with the message. |
| url-title | string | A title for a supplementary URL, otherwise just the URL is shown. |
| sound | string | The name of one of the sounds supported by the device clients to override the user's default sound choice. |
id: handler-id
topic: topic-name
kind: pushover
options:
device: device1, device2, device3
title: Alert from Kapacitor
url: http://example.com
url-title: This is an example title
sound: siren
|alert()
// ...
.pushover()
.device('device1, device2, device3')
.title('Alert from Kapacitor')
.URL('http://example.com')
.URLTitle('This is an example title')
.sound('siren')
Pushover expects priority levels with each alert. Kapacitor alert levels are mapped to the following priority levels:
| Alert Level | Priority Level |
|---|---|
| OK | -2 priority level. |
| Info | -1 priority level. |
| Warning | 0 priority level. |
| Critical | 1 priority level. |
Register your application with Pushover to
get a Pushover token.
Include the token in the [pushover] configuration section of your kapacitor.conf.
With the Pushover event handler enabled and configured in your kapacitor.conf,
use the .pushover() attribute in your TICKscripts to send alerts to Pushover
or define a Pushover handler that subscribes to a topic and sends published
alerts to Pushover.
The following TICKscript sends the message, "Hey, check your CPU", to Pushover
whenever idle CPU usage drops below 10% using the .pushover() event handler.
pushover-cpu-alert.tick
stream
|from()
.measurement('cpu')
|alert()
.crit(lambda: "usage_idle" < 10)
.message('Hey, check your CPU')
.pushover()
.title('Alert from Kapacitor')
.sound('siren')
The following setup sends an alert to the cpu topic with the message, "Hey,
check your CPU".
A Pushover handler is added that subscribes to the cpu topic and publishes all
alert messages to Pushover.
Create a TICKscript that publishes alert messages to a topic.
The TICKscript below sends an alert message to the cpu topic any time idle CPU
usage drops below 10%.
cpu_alert.tick
stream
|from()
.measurement('cpu')
|alert()
.crit(lambda: "usage_idle" < 10)
.message('Hey, check your CPU')
.topic('cpu')
Add and enable the TICKscript:
kapacitor define cpu_alert -tick cpu_alert.tick
kapacitor enable cpu_alert
Create a handler file that subscribes to the cpu topic and uses the Pushover
event handler to send alerts to Pushover.
pushover_cpu_handler.yaml
id: pushover-cpu-alert
topic: cpu
kind: pushover
options:
title: Alert from Kapacitor
sound: siren
Add the handler:
kapacitor define-topic-handler pushover_cpu_handler.yaml