package main import ( "os" "time" _ "github.com/joho/godotenv/autoload" "jonasled.dev/jonasled/ems-esp-logger/log" "jonasled.dev/jonasled/ems-esp-logger/messageworker" "jonasled.dev/jonasled/ems-esp-logger/mqttclient" "jonasled.dev/jonasled/ems-esp-logger/mqttserver" "jonasled.dev/jonasled/ems-esp-logger/zeromq" ) func main() { log.Init() defer zeromq.Pusher.Close() zeromq.Init() if os.Getenv("MQTT_SERVER_ENABLED") == "true" { log.Log.Info("Starting embedded MQTT server") mqttserver.Start() } mqttclient.Init() go messageworker.Run() for { time.Sleep(time.Second) // reduce CPU usage by adding a short sleep here instead of a empty for loop } }