gluster_exporter icon indicating copy to clipboard operation
gluster_exporter copied to clipboard

Multiple up checks are sent causing 500s

Open bfosberry opened this issue 7 years ago • 0 comments

https://github.com/ofesseler/gluster_exporter/blob/master/main.go#L210

Im seeing a behaviour where the exporter is returning a 500 from the metrics api with this error:

An error has occurred during metrics gathering:

collected metric gluster_up gauge:<value:1 >  was collected before with the same name and label values

My guess is that here

	volumeInfo, err := ExecVolumeInfo()

	if err != nil {
		log.Errorf("couldn't parse xml volume info: %v", err)
		ch <- prometheus.MustNewConstMetric(
			up, prometheus.GaugeValue, 0.0,
		)
	}

	// use OpErrno as indicator for up
	if volumeInfo.OpErrno != 0 {
		ch <- prometheus.MustNewConstMetric(
			up, prometheus.GaugeValue, 0.0,
		)
	} else {
		ch <- prometheus.MustNewConstMetric(
			up, prometheus.GaugeValue, 1.0,
		)
	}

ExecVolumeInfo is returning an error and we are also sending up status on whats in volumeInfo.OpErrno. We should be short circuiting there.

bfosberry avatar May 21 '17 03:05 bfosberry