3.4 KiB
title | description | menu | weight | flux/v0/tags | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
alerta.alert() function | `alerta.alert()` sends an alert to [Alerta](https://alerta.io/). |
|
301 |
|
alerta.alert()
sends an alert to Alerta.
Function type signature
(
apiKey: string,
attributes: A,
event: B,
resource: C,
severity: D,
url: string,
?environment: E,
?group: F,
?origin: G,
?service: H,
?tags: I,
?text: J,
?timestamp: K,
?type: L,
?value: M,
) => int
{{% caption %}} For more information, see Function type signatures. {{% /caption %}}
Parameters
url
({{< req >}}) (Required) Alerta URL.
apiKey
({{< req >}}) (Required) Alerta API key.
resource
({{< req >}}) (Required) Resource associated with the alert.
event
({{< req >}}) (Required) Event name.
environment
Alerta environment. Valid values: "Production", "Development" or empty string (default).
severity
({{< req >}}) (Required) Event severity. See Alerta severities.
service
List of affected services. Default is []
.
group
Alerta event group. Default is ""
.
value
Event value. Default is ""
.
text
Alerta text description. Default is ""
.
tags
List of event tags. Default is []
.
attributes
({{< req >}}) (Required) Alert attributes.
origin
monitoring component.
type
Event type. Default is ""
.
timestamp
time alert was generated. Default is now()
.
Examples
Send the last reported value and status to Alerta
import "contrib/bonitoo-io/alerta"
import "influxdata/influxdb/secrets"
apiKey = secrets.get(key: "ALERTA_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)
severity = if lastReported._value > 50 then "warning" else "ok"
alerta.alert(
url: "https://alerta.io:8080/alert",
apiKey: apiKey,
resource: "example-resource",
event: "Example event",
environment: "Production",
severity: severity,
service: ["example-service"],
group: "example-group",
value: string(v: lastReported._value),
text: "Service is ${severity}. The last reported value was ${string(v: lastReported._value)}.",
tags: ["ex1", "ex2"],
attributes: {},
origin: "InfluxDB",
type: "exampleAlertType",
timestamp: now(),
)