3.3 KiB
title | description | menu | weight | flux/v0/tags | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
sensu.endpoint() function | `sensu.endpoint()` sends an event to the [Sensu Events API](https://docs.sensu.io/sensu-go/latest/api/events/#create-a-new-event) using data from table rows. |
|
301 |
|
sensu.endpoint()
sends an event
to the Sensu Events API
using data from table rows.
Usage
sensu.endpoint()
is a factory function that outputs another function.
The output function requires a mapFn
parameter.
mapFn
A function that builds the object used to generate the POST request. Requires an r
parameter.
mapFn
accepts a table row (r
) and returns an object that must include the following fields:
checkName
text
status
For more information, see sensu.event()
parameters.
Function type signature
(
apiKey: string,
url: string,
?entityName: string,
?handlers: A,
?namespace: string,
) => (
mapFn: (r: B) => {C with text: E, status: D, checkName: string},
) => (<-tables: stream[B]) => stream[{B with _sent: string}] where D: Equatable
{{% caption %}} For more information, see Function type signatures. {{% /caption %}}
Parameters
url
({{< req >}})
Base URL of Sensu API
without a trailing slash.
Example: http://localhost:8080
.
apiKey
({{< req >}}) Sensu API Key.
handlers
Sensu handlers to execute.
Default is []
.
namespace
Sensu namespace.
Default is default
.
entityName
Event source.
Default is influxdb
.
Use alphanumeric characters, underscores (_
), periods (.
), and hyphens (-
).
All other characters are replaced with an underscore.
Examples
Send critical status events to Sensu
import "influxdata/influxdb/secrets"
import "contrib/sranka/sensu"
token = secrets.get(key: "TELEGRAM_TOKEN")
endpoint = sensu.endpoint(url: "http://localhost:8080", apiKey: apiKey)
crit_statuses =
from(bucket: "example-bucket")
|> range(start: -1m)
|> filter(fn: (r) => r._measurement == "statuses" and status == "crit")
crit_statuses
|> endpoint(mapFn: (r) => ({checkName: "critStatus", text: "Status is critical", status: 2}))()