Skip to content
Snippets Groups Projects
Commit d02de1ca authored by Jonas Leder's avatar Jonas Leder
Browse files

configure client to use local database connection

parent 5f365661
No related branches found
No related tags found
1 merge request!3Implement API server for DB inserts
Pipeline #54588 passed
...@@ -15,7 +15,6 @@ import ( ...@@ -15,7 +15,6 @@ import (
func main() { func main() {
log.Init() log.Init()
queue.Init() queue.Init()
if os.Getenv("OUTPUT_DATABSE") != "" { if os.Getenv("OUTPUT_DATABSE") != "" {
...@@ -27,10 +26,13 @@ func main() { ...@@ -27,10 +26,13 @@ func main() {
log.Log.Info("Starting embedded MQTT server") log.Log.Info("Starting embedded MQTT server")
mqttserver.Start() mqttserver.Start()
} }
mqttclient.Init()
go messageworker.Run() if os.Getenv("LOGGER_CLIENT") != "false" && os.Getenv("LOGGER_SERVER") != "true" {
for { mqttclient.Init()
time.Sleep(time.Second) // reduce CPU usage by adding a short sleep here instead of a empty for loop go messageworker.RunClient()
for {
time.Sleep(time.Second) // reduce CPU usage by adding a short sleep here instead of a empty for loop
}
} }
} }
...@@ -2,6 +2,7 @@ package messageworker ...@@ -2,6 +2,7 @@ package messageworker
import ( import (
"encoding/json" "encoding/json"
"os"
"time" "time"
"jonasled.dev/jonasled/ems-esp-logger/database" "jonasled.dev/jonasled/ems-esp-logger/database"
...@@ -12,7 +13,15 @@ import ( ...@@ -12,7 +13,15 @@ import (
"jonasled.dev/jonasled/ems-esp-logger/types" "jonasled.dev/jonasled/ems-esp-logger/types"
) )
func Run() { func RunClient() {
if os.Getenv("CLIENT_USE_SERVER") != "true" {
log.Log.Info("Intialized local client with direct datbase connection")
runLocalDbClient()
}
}
func runLocalDbClient() {
for { for {
taskData, taskId, err := queue.MainQueue.Dequeue() taskData, taskId, err := queue.MainQueue.Dequeue()
if err != nil { if err != nil {
...@@ -24,14 +33,14 @@ func Run() { ...@@ -24,14 +33,14 @@ func Run() {
err = json.Unmarshal([]byte(taskData), &task) err = json.Unmarshal([]byte(taskData), &task)
if err != nil { if err != nil {
log.Log.Error("Failed decoding task as JSON: ", err.Error()) log.Log.Error("Failed decoding task as JSON: ", err.Error())
return continue
} }
var instance tables.Instance var instance tables.Instance
err = database.Db.Where("name = ?", task.Instance).First(&instance).Error err = database.Db.Where("name = ?", task.Instance).First(&instance).Error
if err != nil { if err != nil {
log.Log.Error("Failed retreiving instance from database, pushing task back to queue: ", err.Error()) log.Log.Error("Failed retreiving instance from database, pushing task back to queue: ", err.Error())
queue.MainQueue.Enqueue(taskData, 60) queue.MainQueue.Enqueue(taskData, 60)
return continue
} }
var jsonData map[string]interface{} var jsonData map[string]interface{}
...@@ -39,7 +48,7 @@ func Run() { ...@@ -39,7 +48,7 @@ func Run() {
if err != nil { if err != nil {
log.Log.Error("Failed decoding boiler JSON: ", err.Error()) log.Log.Error("Failed decoding boiler JSON: ", err.Error())
queue.MainQueue.Enqueue(taskData, 60) queue.MainQueue.Enqueue(taskData, 60)
return continue
} }
valuesToInsert := []tables.Value{} valuesToInsert := []tables.Value{}
for key, value := range jsonData { for key, value := range jsonData {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment