// KeyInstanceID identifies a dht instance by the pointer address.
// Useful for differentiating between different dhts that have the same peer id.
KeyInstanceID,_=tag.NewKey("instance_id")
)
// UpsertMessageType is a convenience upserts the message type
// of a pb.Message into the KeyMessageType.
funcUpsertMessageType(m*pb.Message)tag.Mutator{
returntag.Upsert(KeyMessageType,m.Type.String())
}
// Measures
var(
ReceivedMessages=stats.Int64("libp2p.io/dht/kad/received_messages","Total number of messages received per RPC",stats.UnitDimensionless)
ReceivedMessageErrors=stats.Int64("libp2p.io/dht/kad/received_message_errors","Total number of errors for messages received per RPC",stats.UnitDimensionless)
ReceivedBytes=stats.Int64("libp2p.io/dht/kad/received_bytes","Total received bytes per RPC",stats.UnitBytes)
InboundRequestLatency=stats.Float64("libp2p.io/dht/kad/inbound_request_latency","Latency per RPC",stats.UnitMilliseconds)
OutboundRequestLatency=stats.Float64("libp2p.io/dht/kad/outbound_request_latency","Latency per RPC",stats.UnitMilliseconds)
SentMessages=stats.Int64("libp2p.io/dht/kad/sent_messages","Total number of messages sent per RPC",stats.UnitDimensionless)
SentMessageErrors=stats.Int64("libp2p.io/dht/kad/sent_message_errors","Total number of errors for messages sent per RPC",stats.UnitDimensionless)
SentRequests=stats.Int64("libp2p.io/dht/kad/sent_requests","Total number of requests sent per RPC",stats.UnitDimensionless)
SentRequestErrors=stats.Int64("libp2p.io/dht/kad/sent_request_errors","Total number of errors for requests sent per RPC",stats.UnitDimensionless)
SentBytes=stats.Int64("libp2p.io/dht/kad/sent_bytes","Total sent bytes per RPC",stats.UnitBytes)