code: func RegisterInfluxDB(ctx context.Context, config *types.InfluxDB) Registry {
  	if influxDBClient == nil {
  		influxDBClient = initInfluxDBClient(ctx, config)
  	}
  	if influxDBTicker == nil {
  		influxDBTicker = initInfluxDBTicker(ctx, config)
  	}
  
  	return &standardRegistry{
  		enabled:                        true,
  		configReloadsCounter:           influxDBClient.NewCounter(influxDBConfigReloadsName),
  		configReloadsFailureCounter:    influxDBClient.NewCounter(influxDBConfigReloadsFailureName),
  		lastConfigReloadSuccessGauge:   influxDBClient.NewGauge(influxDBLastConfigReloadSuccessName),
  		lastConfigReloadFailureGauge:   influxDBClient.NewGauge(influxDBLastConfigReloadFailureName),
  		entrypointReqsCounter:          influxDBClient.NewCounter(influxDBEntrypointReqsName),
  		entrypointReqDurationHistogram: influxDBClient.NewHistogram(influxDBEntrypointReqDurationName),
  		entrypointOpenConnsGauge:       influxDBClient.NewGauge(influxDBEntrypointOpenConnsName),
  		backendReqsCounter:             influxDBClient.NewCounter(influxDBMetricsBackendReqsName),
  		backendReqDurationHistogram:    influxDBClient.NewHistogram(influxDBMetricsBackendLatencyName),
  		backendRetriesCounter:          influxDBClient.NewCounter(influxDBRetriesTotalName),
  		backendOpenConnsGauge:          influxDBClient.NewGauge(influxDBOpenConnsName),
  		backendServerUpGauge:           influxDBClient.NewGauge(influxDBServerUpName),
  	}
  }
docs: // RegisterInfluxDB registers the metrics pusher if this didn't happen yet and creates a InfluxDB Registry instance.