code: func RegisterStatsd(ctx context.Context, config *types.Statsd) Registry {
  	if statsdTicker == nil {
  		statsdTicker = initStatsdTicker(ctx, config)
  	}
  
  	return &standardRegistry{
  		enabled:                        true,
  		configReloadsCounter:           statsdClient.NewCounter(statsdConfigReloadsName, 1.0),
  		configReloadsFailureCounter:    statsdClient.NewCounter(statsdConfigReloadsFailureName, 1.0),
  		lastConfigReloadSuccessGauge:   statsdClient.NewGauge(statsdLastConfigReloadSuccessName),
  		lastConfigReloadFailureGauge:   statsdClient.NewGauge(statsdLastConfigReloadFailureName),
  		entrypointReqsCounter:          statsdClient.NewCounter(statsdEntrypointReqsName, 1.0),
  		entrypointReqDurationHistogram: statsdClient.NewTiming(statsdEntrypointReqDurationName, 1.0),
  		entrypointOpenConnsGauge:       statsdClient.NewGauge(statsdEntrypointOpenConnsName),
  		backendReqsCounter:             statsdClient.NewCounter(statsdMetricsBackendReqsName, 1.0),
  		backendReqDurationHistogram:    statsdClient.NewTiming(statsdMetricsBackendLatencyName, 1.0),
  		backendRetriesCounter:          statsdClient.NewCounter(statsdRetriesTotalName, 1.0),
  		backendOpenConnsGauge:          statsdClient.NewGauge(statsdOpenConnsName),
  		backendServerUpGauge:           statsdClient.NewGauge(statsdServerUpName),
  	}
  }
docs: // RegisterStatsd registers the metrics pusher if this didn't happen yet and creates a statsd Registry instance.