Browse Source
rcmgr: register prometheus metrics with the libp2p registerer (#2370)
* rcmgr: register prometheus metrics with the libp2p registerer
* update dashboard readme
marco/remove-metrics-example
Sukun
1 year ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with
10 additions and
5 deletions
-
config/config.go
-
dashboards/resource-manager/README.md
-
p2p/host/resource-manager/obs/stats.go
|
|
@ -26,6 +26,7 @@ import ( |
|
|
|
blankhost "github.com/libp2p/go-libp2p/p2p/host/blank" |
|
|
|
"github.com/libp2p/go-libp2p/p2p/host/eventbus" |
|
|
|
"github.com/libp2p/go-libp2p/p2p/host/peerstore/pstoremem" |
|
|
|
rcmgrObs "github.com/libp2p/go-libp2p/p2p/host/resource-manager/obs" |
|
|
|
routed "github.com/libp2p/go-libp2p/p2p/host/routed" |
|
|
|
"github.com/libp2p/go-libp2p/p2p/net/swarm" |
|
|
|
tptu "github.com/libp2p/go-libp2p/p2p/net/upgrader" |
|
|
@ -299,6 +300,10 @@ func (cfg *Config) NewNode() (host.Host, error) { |
|
|
|
return nil, err |
|
|
|
} |
|
|
|
|
|
|
|
if !cfg.DisableMetrics { |
|
|
|
rcmgrObs.MustRegisterWith(cfg.PrometheusRegisterer) |
|
|
|
} |
|
|
|
|
|
|
|
h, err := bhost.NewHost(swrm, &bhost.HostOpts{ |
|
|
|
EventBus: eventBus, |
|
|
|
ConnManager: cfg.ConnManager, |
|
|
|
|
|
@ -5,8 +5,10 @@ import follow the Grafana docs [here](https://grafana.com/docs/grafana/latest/da |
|
|
|
|
|
|
|
## Setup |
|
|
|
|
|
|
|
To make sure you're emitting the correct metrics you'll have to register the |
|
|
|
metrics with a Prometheus Registerer. For example: |
|
|
|
To make sure you're emitting the metrics you'll have to create the Resource |
|
|
|
Manager with a StatsTraceReporter. By default metrics will be sent to |
|
|
|
prometheus.DefaultRegisterer. To use a different Registerer use the libp2p |
|
|
|
option libp2p.PrometheusRegisterer. For example: |
|
|
|
|
|
|
|
``` go |
|
|
|
import ( |
|
|
@ -18,8 +20,6 @@ import ( |
|
|
|
) |
|
|
|
|
|
|
|
func SetupResourceManager() (network.ResourceManager, error) { |
|
|
|
rcmgrObs.MustRegisterWith(prometheus.DefaultRegisterer) |
|
|
|
|
|
|
|
str, err := rcmgrObs.NewStatsTraceReporter() |
|
|
|
if err != nil { |
|
|
|
return nil, err |
|
|
|
|
|
@ -142,7 +142,7 @@ var ( |
|
|
|
) |
|
|
|
|
|
|
|
func MustRegisterWith(reg prometheus.Registerer) { |
|
|
|
reg.MustRegister( |
|
|
|
metricshelper.RegisterCollectors(reg, |
|
|
|
conns, |
|
|
|
peerConns, |
|
|
|
previousPeerConns, |
|
|
|