Edge Delta Threshold Node

Define thresholds for trigger nodes.

Overview

The Threshold node evaluates metric items for conditions to send a signal to a trigger destination.

Example Configuration

nodes:
  - name: example_threshold
    type: threshold
    filter: item._name == "error.anomaly1"
    condition:  value > 90

Example 2

nodes:
  - name: example_threshold
    type: threshold
    filter: item._name == "error.count" 
    condition: item._value > 10

If a metric item of error.count with a value of 11 comes in it will trigger this condition and fire a signal alert.

Example 3

nodes:
  - name: example_threshold
    type: threshold
    filter: item._name == "error.count" 
    condition: item._value > 10
    consecutive: 5

The following sequence of metric items will trigger the signal alert from this condition:

  • “error.count” 12
  • “error.count” 11
  • “error.count” 15
  • “error.count” 13
  • “error.count” 14

The following sequence of metric items will NOT trigger the signal alert because the third metric breaks the consecutive condition:

  • “error.count” 12
  • “error.count” 11
  • “error.count” 10
  • “error.count” 13
  • “error.count” 14

Required Parameters

name

A descriptive name for the node. This is the name that will appear in Visual Pipelines and you can reference this node in the yaml using the name. It must be unique across all nodes. It is a yaml list element so it begins with a - and a space followed by the string. It is a required parameter for all nodes.

nodes:
  - name: <node name>
    type: <node type>

type: threshold

The type parameter specifies the type of node being configured. It is specified as a string from a closed list of node types. It is a required parameter.

nodes:
  - name: <node name>
    type: <node type>

filter

The filter parameter identifies the metrics that are subject to threshold evaluation. It is specified in the Common Expression Language (CEL) and is required.

nodes:
  - name: example_threshold
    type: threshold
    filter: item._name == "error.anomaly1"
    condition:  value > 90

condition

The condition parameter specifies the condition to evaluate if the node should emit a signal. The evaluation is done on incoming metrics. It is specified using Common Expression Language (CEL) and is required.

nodes:
  - name: example_threshold
    type: threshold
    filter: item._name == "error.anomaly1"
    condition:  value > 90

Optional Parameters

consecutive

The consecutive parameter is the minimum number of times that one of the limits must be exceeded before alerting. Default is 0 so when any limit is exceeded once then the alert is fired. It is optional.

nodes:
  - name: example_threshold
    type: threshold
    filter: item._name == "error.anomaly1"
    condition:  value > 90
    consecutive: 5