Skip to content
This repository was archived by the owner on Oct 16, 2024. It is now read-only.

Commit d22c9d3

Browse files
vlorincguvenc
authored andcommitted
only export float64 metrics of heap_info
1 parent 0bd1fff commit d22c9d3

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ func main() {
3737
r := prometheus.NewRegistry()
3838
r.MustRegister(metrics.InterfaceStat)
3939
r.MustRegister(metrics.CallCount)
40+
r.MustRegister(metrics.HeapInfo)
4041

4142
http.Handle("/metrics", promhttp.HandlerFor(r, promhttp.HandlerOpts{}))
4243

metrics/metrics.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,13 @@ func queryTelemetry(conn net.Conn, log *logrus.Logger, command string, response
4747

4848
func Update(conn net.Conn, hostname string, log *logrus.Logger) {
4949
var dpserviceHeapInfo DpServiceHeapInfo
50-
queryTelemetry(conn, log, "/eal/heap_info", &dpserviceHeapInfo)
50+
queryTelemetry(conn, log, "/eal/heap_info,0", &dpserviceHeapInfo)
51+
for key, value := range dpserviceHeapInfo.Value {
52+
// Only export metrics of type float64 (/eal/heap_info contains also some string values)
53+
if v, ok := value.(float64); ok {
54+
HeapInfo.With(prometheus.Labels{"node_name": hostname, "info": key}).Set(v)
55+
}
56+
}
5157

5258
var ethdevList EthdevList
5359
queryTelemetry(conn, log, "/ethdev/list", &ethdevList)

metrics/types.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,5 +64,5 @@ type DpServiceGraphCallCount struct {
6464
}
6565

6666
type DpServiceHeapInfo struct {
67-
Value map[string]int `json:"/eal/heap_info"`
67+
Value map[string]any `json:"/eal/heap_info"`
6868
}

0 commit comments

Comments
 (0)