code: func RegisterDatadog(ctx context.Context, config *types.Datadog) Registry {
  	if datadogTicker == nil {
  		datadogTicker = initDatadogClient(ctx, config)
  	}
  
  	registry := &standardRegistry{
  		enabled:                        true,
  		configReloadsCounter:           datadogClient.NewCounter(ddConfigReloadsName, 1.0),
  		configReloadsFailureCounter:    datadogClient.NewCounter(ddConfigReloadsName, 1.0).With(ddConfigReloadsFailureTagName, "true"),
  		lastConfigReloadSuccessGauge:   datadogClient.NewGauge(ddLastConfigReloadSuccessName),
  		lastConfigReloadFailureGauge:   datadogClient.NewGauge(ddLastConfigReloadFailureName),
  		entrypointReqsCounter:          datadogClient.NewCounter(ddEntrypointReqsName, 1.0),
  		entrypointReqDurationHistogram: datadogClient.NewHistogram(ddEntrypointReqDurationName, 1.0),
  		entrypointOpenConnsGauge:       datadogClient.NewGauge(ddEntrypointOpenConnsName),
  		backendReqsCounter:             datadogClient.NewCounter(ddMetricsBackendReqsName, 1.0),
  		backendReqDurationHistogram:    datadogClient.NewHistogram(ddMetricsBackendLatencyName, 1.0),
  		backendRetriesCounter:          datadogClient.NewCounter(ddRetriesTotalName, 1.0),
  		backendOpenConnsGauge:          datadogClient.NewGauge(ddOpenConnsName),
  		backendServerUpGauge:           datadogClient.NewGauge(ddServerUpName),
  	}
  
  	return registry
  }
docs: // RegisterDatadog registers the metrics pusher if this didn't happen yet and creates a datadog Registry instance.