bigpanda.sendAlert() function

bigpanda.sendAlert() sends an alert to BigPanda.

Function type signature
(
    appKey: A,
    rec: B,
    status: C,
    token: string,
    url: string,
) => int

For more information, see Function type signatures.

Parameters

url

(Required) BigPanda alerts API URL. Default is the value of the bigpanda.defaultURL option.

token

(Required) BigPanda API Authorization token (API key).

appKey

(Required) BigPanda App Key.

status

(Required) BigPanda alert status.

Supported statuses:

  • ok
  • critical
  • warning
  • acknowledged

rec

(Required) 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,
            )}",
    },
)

Was this page helpful?

Thank you for your feedback!