From 76b5ff15fd4115dd7b5a04d17fca02b9ea31c459 Mon Sep 17 00:00:00 2001 From: Holger Cremer Date: Thu, 4 Jan 2018 22:40:37 +0100 Subject: [PATCH] better logging --- extras/spaceDevicesGo.service | 8 ++++---- mqtt/deviceData.go | 21 +++++++++++++-------- mqtt/mqtt.go | 5 ++++- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/extras/spaceDevicesGo.service b/extras/spaceDevicesGo.service index c807162..b6eae1d 100644 --- a/extras/spaceDevicesGo.service +++ b/extras/spaceDevicesGo.service @@ -5,11 +5,11 @@ After=network.target [Service] Type=simple -User= -Group= +User=status +Group=status Environment="GIN_MODE=release" -WorkingDirectory= -ExecStart=/spaceDevices +WorkingDirectory=/home/status/spaceDevices2 +ExecStart=/home/status/spaceDevices2/spaceDevices Restart=always RestartSec=60 diff --git a/mqtt/deviceData.go b/mqtt/deviceData.go index 0688861..7ea95de 100644 --- a/mqtt/deviceData.go +++ b/mqtt/deviceData.go @@ -11,6 +11,7 @@ import ( "fmt" "bytes" "sort" + "strings" ) var ignoredVisibility = [...]db.Visibility{db.VisibilityCriticalInfrastructure, db.VisibilityImportantInfrastructure, @@ -54,17 +55,21 @@ func (d *DeviceData) newData(data []byte) { if ok { d.wifiSessionList = sessionsList if ddLogger.Logger.Level >= logrus.DebugLevel { - people := make(map[string]interface{}) - for _, p := range peopleAndDevices.People { - people[p.Name] = nil - } - peopleList := make([]string, len(people)) - for k, _ := range people { - peopleList = append(peopleList, k) + peopleList := make([]string, 0, len(peopleAndDevices.People)) + for _, person := range peopleAndDevices.People { + if len(person.Name) == 0 { + continue + } + personStr := person.Name + " [" + for _, device := range person.Devices { + personStr += device.Name + "," + } + personStr += "]" + peopleList = append(peopleList, personStr) } sort.Strings(peopleList) ddLogger.Debugf("PeopleCount: %d, DeviceCount: %d, UnknownDevicesCount: %d, Persons: %s", - peopleAndDevices.PeopleCount, peopleAndDevices.DeviceCount, peopleAndDevices.UnknownDevicesCount, peopleList) + peopleAndDevices.PeopleCount, peopleAndDevices.DeviceCount, peopleAndDevices.UnknownDevicesCount, strings.Join(peopleList, "; ")) } h := md5.New() s := fmt.Sprintf("%v", peopleAndDevices) diff --git a/mqtt/mqtt.go b/mqtt/mqtt.go index b78cea9..51eb118 100644 --- a/mqtt/mqtt.go +++ b/mqtt/mqtt.go @@ -95,10 +95,13 @@ func (h *MqttHandler) SendPeopleAndDevices(data PeopleAndDevices) { return } + mqttLogger.Infof("Sending PeopleAndDevices: %d, %d, %d, %d", + data.PeopleCount, data.DeviceCount, data.UnknownDevicesCount, len(data.People)) + token := h.client.Publish(TOPIC_DEVICES, 0, true, string(bytes)) ok := token.WaitTimeout(time.Duration(time.Second * 10)) if !ok { - mqttLogger.Infoln("Error sending devices to:", TOPIC_DEVICES) + mqttLogger.Warn("Error sending devices to:", TOPIC_DEVICES) return } }