package net import ( "net" "git.frostfs.info/TrueCloudLab/frostfs-node/internal/metrics" "git.frostfs.info/TrueCloudLab/multinet" ) var _ multinet.EventHandler = (*metricsEventHandler)(nil) type metricsEventHandler struct { m metrics.MultinetMetrics } func (m *metricsEventHandler) DialPerformed(sourceIP net.Addr, _ string, _ string, err error) { sourceIPString := "undefined" if sourceIP != nil { sourceIPString = sourceIP.Network() + "://" + sourceIP.String() } m.m.Dial(sourceIPString, err == nil) } func newEventHandler(m metrics.MultinetMetrics) multinet.EventHandler { if m == nil { return nil } return &metricsEventHandler{m: m} }