SDN Controller Programming Guide
39
Metrics Framework
The fundamental objectives to be addressed by the metering framework are as follows.
Support components that are part of the HP VAN SDN Controller Framework and
applications that aren’t.
Make metrics simple to use.
Support the creation and updating of metrics within the controller and from outside, to
accommodate apps those have external components but want to keep all of their metric data
in one repository.
Support several metric types:
Counter.
Gauge.
Rolling counter.
Ratio gauge.
Histogram.
Meter.
Timer.
Be robust.
Survive a scenario in which the controller bounces.
Survive a scenario in which the metering framework bounces but the controller doesn’t.
Support persistence of data over time on different time scales.
Support display of specified metrics via JMX.
Support authorization-based REST access to persisted data over time.
External View
The overarching purpose of metering support is to provide a centralized facility that application
developers can use to track metric values over time, and to provide access to the resulting time
stamped values thereafter via REST. The use of this facility, as shown in the following conceptual
diagram, should demand relatively little effort from a developer beyond creating and updating the
metrics they wish to utilize.