sensu.endpoint() function

    The sensu.endpoint() function sends an event to the Sensu Events API using data from table rows.

    *Function type: Output*

    Required Base URL of without a trailing slash. Example: http://localhost:8080.

    *Data type: String*

    apiKey

    Required Sensu .

    Sensu handlers to execute. Default is [].

    *Data type: Array of strings*

    namespace

    Sensu namespace. Default is default.

    *Data type: String*

    Event source. Use alphanumeric characters, underscores (_), periods (.), and hyphens (-). All other characters are replaced with an underscore. Default is influxdb.

    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.

    *Data type: Function*

    accepts a table row (r) and returns an object that must include the following fields:

    • text
    • status

    For more information, see sensu.event() parameters.

    Send critical status events to Sensu
    1. import "influxdata/influxdb/secrets"
    2. import "contrib/sranka/sensu"
    3. token = secrets.get(key: "TELEGRAM_TOKEN")
    4. endpoint = sensu.endpoint(
    5. url: "http://localhost:8080",
    6. )
    7. crit_statuses = from(bucket: "example-bucket")
    8. |> filter(fn: (r) => r._measurement == "statuses" and status == "crit")
    9. crit_statuses
    10. |> endpoint(mapFn: (r) => ({
    11. checkName: "critStatus",
    12. text: "Status is critical",
    13. status: 2
    14. )()

    Package author and maintainer

    Related articles