Reference Guide
Table Of Contents
- 1 Introduction
- 2 Establishing Your Test and Development Environments
- 3 Developing Applications
- Introduction
- Authentication
- REST API
- Audit Logging
- Alert Logging
- Configuration
- High Availability
- OpenFlow
- Metrics Framework
- GUI
- SKI Framework - Overview
- SKI Framework - Navigation Tree
- SKI Framework - Hash Navigation
- SKI Framework - View Life-Cycle
- SKI Framework - Live Reference Application
- UI Extension
- Introduction
- Controller Teaming
- Distributed Coordination Service
- Persistence
- Backup and Restore
- Device Driver Framework
- 4 Application Security
- 5 Including Debian Packages with Applications
- 6 Sample Application
- Application Description
- Creating Application Development Workspace
- Application Generator (Automatic Workspace Creation)
- Creating Eclipse Projects
- Updating Project Dependencies
- Building the Application
- Installing the Application
- Application Code
- 7 Testing Applications
- 8 Built-In Applications
- Appendix A
- Appendix B
- Bibliography
An instantaneous measure.
Example application: the amount of disk space consumed by metric data.
•
TimeStampedHistogram
A distribution of values from a stream of data for which mean, minimum, maximum, and
various quartile values are tracked.
Example application: distribution of OpenFlow flow sizes.
•
TimeStampedMeter
Aggregates event durations to measure event throughput.
Example application: the frequency with which OpenFlow flow requests are sent to the
controller by a specific switch.
•
TimeStampedRatioGauge
A ratio between two non-cumulative instantaneous numbers.
Example application: the amount of disk space consumed by a specific application's
metric data compared to all metric data.
•
TimeStampedRollingCounter
A cumulative measurement that is asymptotically increased when some event occurs, and
may eventually roll over to zero and begin anew.
Example application: a MIB counter that represents the number of octets observed in a
specific subnet.
•
TimeStampedTimer (combines the functionality of TimeStampedHistogram and
TimeStampedMeter)
Aggregates event durations to provide statistics about the event duration and throughput.
Example application: the rate at which entries are placed on a queue and a histogram
of the time they spent on the queue.
TimeStampedMetric Life Cycle
Creating a TimeStampedMetric
It is possible to create a TimeStampedMetric and track its value from a component or application
that is running within the controller.
To request that the MetricService create a new TimeStampedMetric, a component or application
must provide a MetricDescriptor object that specifies the characteristics of the desired
TimeStampedMetric. A MetricDescriptor contains four fields that, when combined, produce a
combination (four-tuple) that is unique to that MetricDescriptor and the resulting
TimeStampedMetric: an application ID, a primary tag, a secondary tag, and a metric name. The
MetricDescriptor also contains other fields, as follows.
Required Field(s)
•
A name that is unique among TimeStampedMetrics of the same application ID, primary tag,
and secondary tag combination (String).
Optional Field(s)
•
The ID of the application creating the TimeStampedMetric instance (String, defaulted to the
application ID).
48