Documentation

bigpanda.sendAlert() function

bigpanda.sendAlert() is a user-contributed function maintained by the package author.

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!


The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Read more