v1

latestSwagger 2.02026-07-178567199.3 KB
sources
kapacitors
rules

Get all defined alert rules.

get/sources/{id}/kapacitors/{kapa_id}/rules

Path parameters

idstring required

ID of the source

kapa_idstring required

ID of the kapacitor backend.

Query parameters

patternstring

filter results to contain the specified value in the task name

limitnumber

limits results length, 0 to return unlimited results

parsestring

can be '0' to skip parsing of TICKscript

Response

All alert rules for this specific kapacitor are returned

Example response

{
  "rules": [
    {
      "id": "chronograf-v1-b2b065ea-79bd-4e4f-8c0d-d0ef68477d38",
      "query": {
        "id": "ce72917d-1ecb-45ea-a6cb-4c122deb93c7",
        "database": "telegraf",
        "measurement": "cpu",
        "retentionPolicy": "autogen",
        "fields": [
          {
            "value": "max",
            "type": "func",
            "args": [
              {
                "value": "usage_system",
                "type": "field"
              }
            ]
          }
        ],
        "tags": {},
        "groupBy": {
          "time": "10m",
          "tags": []
        },
        "areTagsAccepted": true
      },
      "every": "30s",
      "alertNodes": {
        "typeOf": "alert",
        "stateChangesOnly": true,
        "noRecoveries": false,
        "useFlapping": false,
        "post": [],
        "tcp": [],
        "email": [],
        "exec": [],
        "log": [],
        "victorOps": [],
        "pagerDuty": [],
        "pagerDuty2": [],
        "pushover": [],
        "sensu": [],
        "slack": [],
        "telegram": [],
        "alerta": [
          {
            "token": "",
            "resource": "res",
            "event": "evt",
            "environment": "env",
            "group": "grp",
            "value": "val",
            "origin": "kapacitor",
            "service": [
              "svc"
            ]
          }
        ],
        "opsGenie": [],
        "opsGenie2": [],
        "talk": [],
        "kafka": [],
        "serviceNow": null,
        "bigPanda": null,
        "teams": null,
        "zenoss": null
      },
      "message": "too much spam",
      "details": "muh body",
      "trigger": "threshold",
      "values": {
        "operator": "greater than",
        "value": "10"
      },
      "name": "Untitled Rule",
      "tickscript": "var db = 'telegraf'\n\nvar rp = 'autogen'\n\nvar measurement = 'cpu'\n\nvar groupBy = []\n\nvar whereFilter = lambda: TRUE\n\nvar period = 10m\n\nvar every = 30s\n\nvar name = 'Untitled Rule'\n\nvar idVar = name + ':{{.Group}}'\n\nvar message = 'too much spam'\n\nvar idTag = 'alertID'\n\nvar levelTag = 'level'\n\nvar messageField = 'message'\n\nvar durationField = 'duration'\n\nvar outputDB = 'chronograf'\n\nvar outputRP = 'autogen'\n\nvar outputMeasurement = 'alerts'\n\nvar triggerType = 'threshold'\n\nvar details = 'muh body'\n\nvar crit = 10\n\nvar data = stream\n    |from()\n        .database(db)\n        .retentionPolicy(rp)\n        .measurement(measurement)\n        .groupBy(groupBy)\n        .where(whereFilter)\n    |window()\n        .period(period)\n        .every(every)\n        .align()\n    |max('usage_system')\n        .as('value')\n\nvar trigger = data\n    |alert()\n        .crit(lambda: \"value\" > crit)\n        .stateChangesOnly()\n        .message(message)\n        .id(idVar)\n        .idTag(idTag)\n        .levelTag(levelTag)\n        .messageField(messageField)\n        .durationField(durationField)\n        .details(details)\n        .alerta()\n        .resource('res')\n        .event('evt')\n        .environment('env')\n        .group('grp')\n        .value('val')\n        .origin('kapacitor')\n        .services('svc')\n        .correlated()\n\ntrigger\n    |influxDBOut()\n        .create()\n        .database(outputDB)\n        .retentionPolicy(outputRP)\n        .measurement(outputMeasurement)\n        .tag('alertName', name)\n        .tag('triggerType', triggerType)\n\ntrigger\n    |httpOut('output')\n",
      "type": "stream",
      "dbrps": [
        {
          "db": "telegraf",
          "rp": "autogen"
        }
      ],
      "status": "disabled",
      "executing": false,
      "error": "",
      "created": "2017-05-05T16:16:03.471138388-05:00",
      "modified": "2017-05-23T15:57:42.625909746-05:00",
      "last-enabled": "2017-05-05T16:16:25.890210217-05:00",
      "links": {
        "self": "/chronograf/v1/sources/5/kapacitors/5/rules/chronograf-v1-b2b065ea-79bd-4e4f-8c0d-d0ef68477d38",
        "kapacitor": "/chronograf/v1/sources/5/kapacitors/5/proxy?path=%2Fkapacitor%2Fv1%2Ftasks%2Fchronograf-v1-b2b065ea-79bd-4e4f-8c0d-d0ef68477d38",
        "output": "/chronograf/v1/sources/5/kapacitors/5/proxy?path=%2Fkapacitor%2Fv1%2Ftasks%2Fchronograf-v1-b2b065ea-79bd-4e4f-8c0d-d0ef68477d38%2Foutput"
      }
    }
  ]
}