3.0 KiB
3.0 KiB
| title | description | menu | weight | flux/v0/tags | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| victorops.alert() function | `victorops.alert()` sends an alert to VictorOps. |
|
301 |
|
victorops.alert() sends an alert to VictorOps.
Function type signature
(
messageType: A,
url: string,
?entityDisplayName: B,
?entityID: C,
?monitoringTool: D,
?stateMessage: E,
?timestamp: F,
) => int
{{% caption %}} For more information, see Function type signatures. {{% /caption %}}
Parameters
url
({{< req >}}) VictorOps REST endpoint integration URL.
Example: https://alert.victorops.com/integrations/generic/00000000/alert/<api_key>/<routing_key>
Replace <api_key> and <routing_key> with valid VictorOps API and routing keys.
monitoringTool
Monitoring agent name. Default is "".
messageType
({{< req >}}) VictorOps message type (alert behavior).
Valid values:
CRITICALWARNINGINFO
entityID
Incident ID. Default is "".
entityDisplayName
Incident display name or summary. Default is "".
stateMessage
Verbose incident message. Default is "".
timestamp
Incident start time. Default is now().
Examples
Send the last reported value and incident type to VictorOps
import "contrib/bonitoo-io/victorops"
import "influxdata/influxdb/secrets"
apiKey = secrets.get(key: "VICTOROPS_API_KEY")
routingKey = secrets.get(key: "VICTOROPS_ROUTING_KEY")
lastReported =
from(bucket: "example-bucket")
|> range(start: -1m)
|> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_idle")
|> last()
|> findRecord(fn: (key) => true, idx: 0)
victorops.alert(
url: "https://alert.victorops.com/integrations/generic/00000000/alert/${apiKey}/${routingKey}",
messageType:
if lastReported._value < 1.0 then
"CRITICAL"
else if lastReported._value < 5.0 then
"WARNING"
else
"INFO",
entityID: "example-alert-1",
entityDisplayName: "Example Alert 1",
stateMessage: "Last reported cpu_idle was ${string(v: r._value)}.",
)