summaryrefslogtreecommitdiffstats
path: root/adapter
diff options
context:
space:
mode:
authorOndrej Fabry <ofabry@cisco.com>2019-02-19 13:57:12 +0100
committerOndrej Fabry <ofabry@cisco.com>2019-02-19 14:02:45 +0100
commit45e38494c1d65ad9178ad15f4048c0ab16f98b77 (patch)
treedfbc70131af8faff5fde24fc1bbca8a72a91c102 /adapter
parentdf05a70f90a1486a86a4156b1b0d68c94f2098b4 (diff)
Introduce higer-level API for retrieving statistics
- see stats-api example Change-Id: I11d29d32b60d25238e75cb6b86ee34842348ab38 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
Diffstat (limited to 'adapter')
-rw-r--r--adapter/stats_api.go24
1 files changed, 14 insertions, 10 deletions
diff --git a/adapter/stats_api.go b/adapter/stats_api.go
index 4a3f130..3538176 100644
--- a/adapter/stats_api.go
+++ b/adapter/stats_api.go
@@ -14,6 +14,10 @@
package adapter
+import (
+ "fmt"
+)
+
// StatsAPI provides connection to VPP stats API.
type StatsAPI interface {
// Connect establishes client connection to the stats API.
@@ -34,11 +38,11 @@ type StatsAPI interface {
type StatType int
const (
- _ StatType = iota
- ScalarIndex
- SimpleCounterVector
- CombinedCounterVector
- ErrorIndex
+ _ StatType = 0
+ ScalarIndex = 1
+ SimpleCounterVector = 2
+ CombinedCounterVector = 3
+ ErrorIndex = 4
)
func (d StatType) String() string {
@@ -52,7 +56,7 @@ func (d StatType) String() string {
case ErrorIndex:
return "ErrorIndex"
}
- return "UnknownStatType"
+ return fmt.Sprintf("UnknownStatType(%d)", d)
}
// StatEntry represents single stat entry. The type of stat stored in Data
@@ -79,13 +83,13 @@ type ScalarStat float64
type ErrorStat uint64
// SimpleCounterStat represents stat for SimpleCounterVector.
-// The outer array represents workers and the inner array represents sw_if_index.
-// Values should be aggregated per interface for every worker.
+// The outer array represents workers and the inner array represents interface/node/.. indexes.
+// Values should be aggregated per interface/node for every worker.
type SimpleCounterStat [][]Counter
// CombinedCounterStat represents stat for CombinedCounterVector.
-// The outer array represents workers and the inner array represents sw_if_index.
-// Values should be aggregated per interface for every worker.
+// The outer array represents workers and the inner array represents interface/node/.. indexes.
+// Values should be aggregated per interface/node for every worker.
type CombinedCounterStat [][]CombinedCounter
// Data represents some type of stat which is usually defined by StatType.