| 123456789101112131415161718192021222324252627282930313233343536373839 |
- package p2p
- import (
- gossipv1 "github.com/certusone/wormhole/node/pkg/proto/gossip/v1"
- "github.com/certusone/wormhole/node/pkg/vaa"
- "github.com/ethereum/go-ethereum/common"
- "github.com/libp2p/go-libp2p-core/peer"
- "github.com/prometheus/client_golang/prometheus"
- "github.com/prometheus/client_golang/prometheus/promauto"
- )
- var (
- wormholeNetworkNodeHeight = promauto.NewGaugeVec(
- prometheus.GaugeOpts{
- Name: "wormhole_network_node_height",
- Help: "Network height of the given guardian node per network",
- }, []string{"guardian_addr", "node_id", "node_name", "network"})
- wormholeNetworkNodeErrors = promauto.NewGaugeVec(
- prometheus.GaugeOpts{
- Name: "wormhole_network_node_errors_count",
- Help: "Number of errors the given guardian node encountered per network",
- }, []string{"guardian_addr", "node_id", "node_name", "network"})
- )
- func collectNodeMetrics(addr common.Address, peerId peer.ID, hb *gossipv1.Heartbeat) {
- for _, n := range hb.Networks {
- if n == nil {
- continue
- }
- chain := vaa.ChainID(n.Id)
- wormholeNetworkNodeHeight.WithLabelValues(
- addr.Hex(), peerId.Pretty(), hb.NodeName, chain.String()).Set(float64(n.Height))
- wormholeNetworkNodeErrors.WithLabelValues(
- addr.Hex(), peerId.Pretty(), hb.NodeName, chain.String()).Set(float64(n.ErrorCount))
- }
- }
|