2.9 KiB
2.9 KiB
title | description | menu | weight | flux/v0/tags | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
bigpanda.sendAlert() function | `bigpanda.sendAlert()` sends an alert to [BigPanda](https://www.bigpanda.io/). |
|
301 |
|
bigpanda.sendAlert()
sends an alert to BigPanda.
Function type signature
(
appKey: A,
rec: B,
status: C,
token: string,
url: string,
) => int
{{% caption %}} For more information, see Function type signatures. {{% /caption %}}
Parameters
url
({{< req >}})
BigPanda alerts API URL.
Default is the value of the bigpanda.defaultURL
option.
token
({{< req >}}) BigPanda API Authorization token (API key).
appKey
({{< req >}}) BigPanda App Key.
status
({{< req >}}) BigPanda alert status.
Supported statuses:
ok
critical
warning
acknowledged
rec
({{< req >}}) Additional alert parameters to send to the BigPanda alert API.
Examples
Send the last reported value and status to BigPanda
import "contrib/rhajek/bigpanda"
import "influxdata/influxdb/secrets"
import "json"
token = secrets.get(key: "BIGPANDA_API_KEY")
lastReported =
from(bucket: "example-bucket")
|> range(start: -1m)
|> filter(fn: (r) => r._measurement == "example-measurement" and r._field == "level")
|> last()
|> findRecord(fn: (key) => true, idx: 0)
bigpanda.sendAlert(
token: token,
appKey: "example-app-key",
status: bigpanda.statusFromLevel(level: "${lastReported.status}"),
rec: {
tags: json.encode(v: [{"name": "host", "value": "my-host"}]),
check: "my-check",
description: "${lastReported._field} is ${lastReported.status}: ${string(
v: lastReported._value,
)}",
},
)