code: func NewSupervisordCollector() (Collector, error) {
  	var (
  		subsystem  = "supervisord"
  		labelNames = []string{"name", "group"}
  	)
  	return &supervisordCollector{
  		upDesc: prometheus.NewDesc(
  			prometheus.BuildFQName(namespace, subsystem, "up"),
  			"Process Up",
  			labelNames,
  			nil,
  		),
  		stateDesc: prometheus.NewDesc(
  			prometheus.BuildFQName(namespace, subsystem, "state"),
  			"Process State",
  			labelNames,
  			nil,
  		),
  		exitStatusDesc: prometheus.NewDesc(
  			prometheus.BuildFQName(namespace, subsystem, "exit_status"),
  			"Process Exit Status",
  			labelNames,
  			nil,
  		),
  		startTimeDesc: prometheus.NewDesc(
  			prometheus.BuildFQName(namespace, subsystem, "start_time_seconds"),
  			"Process start time",
  			labelNames,
  			nil,
  		),
  	}, nil
  }
docs: // NewSupervisordCollector returns a new Collector exposing supervisord statistics.