This is an automated email from the git hooks/post-receive script.
shelikhoo pushed a commit to branch main in repository pluggable-transports/snowflake.
commit fa7d1e2bb77b92452785ce3d03c81a90efc9891e Author: Shelikhoo xiaokangwang@outlook.com AuthorDate: Fri May 27 16:21:28 2022 +0100
Add distinct IP counter to metrics --- broker/metrics.go | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/broker/metrics.go b/broker/metrics.go index 639d505..cd1ca37 100644 --- a/broker/metrics.go +++ b/broker/metrics.go @@ -14,6 +14,7 @@ import ( "sync" "time"
+ "git.torproject.org/pluggable-transports/snowflake.git/v2/common/ipsetsink/sinkcluster" "git.torproject.org/pluggable-transports/snowflake.git/v2/common/messages" "github.com/prometheus/client_golang/prometheus" "gitlab.torproject.org/tpo/anti-censorship/geoip" @@ -41,6 +42,8 @@ type Metrics struct { logger *log.Logger geoipdb *geoip.Geoip
+ distinctIPWriter *sinkcluster.ClusterWriter + countryStats CountryStats clientRoundtripEstimate time.Duration proxyIdleCount uint @@ -324,3 +327,13 @@ func initPrometheus() *PromMetrics {
return promMetrics } + +func (m *Metrics) RecordIPAddress(ip string) { + if m.distinctIPWriter != nil { + m.distinctIPWriter.AddIPToSet(ip) + } +} + +func (m *Metrics) SetIPAddressRecorder(recorder *sinkcluster.ClusterWriter) { + m.distinctIPWriter = recorder +}