code: func prometheusPushClient(addr string, interval time.Duration) {
  	// TODO: TiDB do not have uniq name, so we use host+port to compose a name.
  	job := "tidb"
  	for {
  		err := push.AddFromGatherer(
  			job,
  			map[string]string{"instance": instanceName()},
  			addr,
  			prometheus.DefaultGatherer,
  		)
  		if err != nil {
  			log.Error("could not push metrics to prometheus pushgateway", zap.String("err", err.Error()))
  		}
  		time.Sleep(interval)
  	}
  }
docs: // prometheusPushClient pushes metrics to Prometheus Pushgateway.