+// Copyright (c) 2019 Cisco and/or its affiliates.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at:
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
package adapter
+import (
+ "fmt"
+)
+
// StatsAPI provides connection to VPP stats API.
type StatsAPI interface {
// Connect establishes client connection to the stats API.
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 {
case ErrorIndex:
return "ErrorIndex"
}
- return "UnknownStatType"
+ return fmt.Sprintf("UnknownStatType(%d)", d)
}
// StatEntry represents single stat entry. The type of stat stored in Data
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.