Function behavior when monitored URI has wildcards

The following are the behaviors of the supported condition expression functions when the monitored URI contains wildcards and thus points more than one resource:

count

This function counts the number of distinct time-series data points that have been generated and implicitly reflects the "count" of data points collected at each data collection interval.

For example, the count function applied to the following URI results in the number of subsystems that are present:

/rest/v1/system/subsystems/*/base?attributes=resource_utilization.cpu
sum

When the monitored URI contains wildcards, this function sums over the current values of all resources pointed to by expanding the wildcard. This function only applies to columns of type integer.

For example, the sum function applied to the following URI is the sum total of the value of the CPU utilization of all subsystems configured in the system.

/rest/v1/system/subsystems/*/base?attributes=resource_utilization.cpu
min and max

When the monitored URI contains wildcards, these functions return the minimum or maximum of the current value of all currently present resources pointed to by expanding the wildcard. This function only applies to columns of type integer.

For example, the min function applied to the following URI returns the current minimum number of received packets across all configured interfaces. In other words, you can use this function to determine which interface received the fewest number of packets at this evaluation point.

/rest/v1/system/interfaces/*?attributes=statistics.rx_packets
avg

This function performs an average over the current values of all currently present resources pointed to by expanding the wildcard. This function only applies to columns of type integer.

For example, the avg function applied to the following URI returns the average number of transmitted packets across all configured interfaces:

/rest/v1/system/interfaces/*?attributes=statistics.tx_packets
Aggregator over time

When the keyword over follows one of the aggregators, the function behaves in a similar way but performs its aggregation "over" the specified time in the past instead of over the current value only. When the URI contains wildcards, the computation happens over each resource represented by the wildcard.

rate

The rate function calculates the per-second average rate of increase for each of the monitored resources.

For example, if interfaces 1/1/5 and 1/1/6 have been configured, using the following expression returns the ratio of received packets to transmitted packets for each of the two interfaces:

/rest/v1/system/interfaces/*?attributes=statistics.rx_packets per 1 minute
transition

Similar to rate, the transition function finds the transitions for each of the resources pointed to by expanding the wildcard in the monitored URI.

The transition function only applies to columns of type boolean, enum, and list.

For example, the following expression is true for every configured port that goes down:

transition(/rest/v1/system/ports/*?attributes=admin) from "up" to "down"
ratio

The ratio function finds the ratio between numerator and denominator for each of the resources pointed to by expanding the wildcard.

For example, if interfaces 1/1/5 and 1/1/6 have been configured, using the following expression returns the ratio of received packets to transmitted packets for each of the two interfaces:

ratio of /rest/v1/system/interfaces/*?attributes=statistics.rx_packets and /rest/v1/system/interfaces/*?attributes=statistics.tx_packets