From db5dd9e676253b501a0c54e7a173b6015f308a5a Mon Sep 17 00:00:00 2001 From: Liviu Chiribuca Date: Thu, 26 Apr 2018 20:22:53 +0100 Subject: [PATCH] Fixed json array append issue --- main.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/main.go b/main.go index 27b9191..b7ede20 100644 --- a/main.go +++ b/main.go @@ -24,7 +24,7 @@ type sensor struct { } var ( - sensors = []sensor{} + sensors = make([]sensor, 1, 2) onewireDevicePath = "/sys/bus/w1/devices/" onewireDeviceList []string hostname, _ = os.Hostname() @@ -97,6 +97,8 @@ func observeOnewireTemperature() { log.Fatal("Error getting Onewire device list") } for { + sensors = sensors[:len(onewireDeviceList)] + index := 0 for _, deviceID := range onewireDeviceList { value, err := readOnewireDevicePayload(deviceID) if err != nil { @@ -104,7 +106,8 @@ func observeOnewireTemperature() { } log.WithFields(log.Fields{"deviceID": deviceID, "value": value, "hostname": hostname}).Info("Value read from device") onewireTemperatureC.With(prometheus.Labels{"device_id": deviceID, "hostname": hostname}).Set(value) - sensors = append(sensors, sensor{SensorID: deviceID, SensorType: "temperature", SensorValue: value}) + sensors[index] = sensor{SensorID: deviceID, SensorType: "temperature", SensorValue: value} + index++ } time.Sleep(60 * time.Second) }