From 6cc6238fdb36145ba15318d9e2e19900ad82e6e3 Mon Sep 17 00:00:00 2001 From: William Clark Date: Fri, 24 Nov 2023 15:37:55 +0000 Subject: [PATCH] rework text output --- core/th7/service.go | 4 ---- db/influxdb.go | 2 +- db/sqlite3.go | 9 ++++----- go.mod | 6 ++++-- go.sum | 14 ++++++++++---- main.go | 11 +++++++++++ web/gin.go | 3 ++- 7 files changed, 32 insertions(+), 17 deletions(-) diff --git a/core/th7/service.go b/core/th7/service.go index e136eaf..e6c2b30 100644 --- a/core/th7/service.go +++ b/core/th7/service.go @@ -1,7 +1,6 @@ package th7 import ( - "fmt" "log" thermo_data "th7/data/thermocouple" "th7/filter" @@ -117,10 +116,7 @@ func startCacheService(t *TH7Adapter) { total_sample_size += t.cfg.Channels[k].Filter.SampleSize } - fmt.Printf("updated %d channels. %d samples. dur=%s\n", len(t.cfg.Channels), total_sample_size, elapsed) - if elapsed >= (DurWaitRestart + duroffset) { - fmt.Println("timer overrun, adding 100ms") duroffset += 100 * time.Millisecond } else { time.Sleep(DurWaitRestart + duroffset - elapsed) diff --git a/db/influxdb.go b/db/influxdb.go index e73b14a..e4480f4 100644 --- a/db/influxdb.go +++ b/db/influxdb.go @@ -122,7 +122,7 @@ func (ad *InfluxDBAdapter) Save(channels []core.Channel) error { return err } - fmt.Printf("[InfluxDB] logged %d channels OK\n", len(channels)) + fmt.Printf("[%s] InfluxDB: logged %d channels OK\n", time.Now().Format(time.DateTime), len(channels)) return nil } diff --git a/db/sqlite3.go b/db/sqlite3.go index f8f5f30..5a6c2a9 100644 --- a/db/sqlite3.go +++ b/db/sqlite3.go @@ -22,8 +22,8 @@ type SQLite3Adapter struct { } const ( - SQLITE3_MAX_INIT_DUR = 5000 * time.Millisecond - SQLITE3_MAX_SAVE_DUR = 2000 * time.Millisecond + SQLITE3_MAX_INIT_DUR = 3000 * time.Millisecond + SQLITE3_MAX_SAVE_DUR = 3000 * time.Millisecond ) func NewSQLite3Adapter(config config.Config) (*SQLite3Adapter, error) { @@ -96,10 +96,9 @@ func (ad *SQLite3Adapter) Save(channels []core.Channel) error { if err != nil { return err } - - fmt.Printf("[%s] SQLite3 log: id=%d, type=%s, gain=%.2f, offset=%.2f, value=%.2f\n", timestamp, id, thermo, gain, offset, value) - } + fmt.Printf("[%s] SQLite3: logged %d channels.\n", timestamp, len(channels)) + return nil } diff --git a/go.mod b/go.mod index 9f2303a..eb49ad1 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,7 @@ go 1.19 require ( github.com/InfluxCommunity/influxdb3-go v0.4.0 + github.com/fatih/color v1.16.0 github.com/gin-gonic/gin v1.8.1 ) @@ -17,6 +18,7 @@ require ( github.com/klauspost/compress v1.15.15 // indirect github.com/klauspost/cpuid/v2 v2.2.3 // indirect github.com/magiconair/properties v1.8.6 // indirect + github.com/mattn/go-colorable v0.1.13 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/pelletier/go-toml v1.9.5 // indirect github.com/pierrec/lz4/v4 v4.1.17 // indirect @@ -43,7 +45,7 @@ require ( github.com/goccy/go-json v0.10.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/leodido/go-urn v1.2.1 // indirect - github.com/mattn/go-isatty v0.0.17 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-sqlite3 v1.14.16 github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect @@ -53,7 +55,7 @@ require ( github.com/ugorji/go/codec v1.2.7 // indirect golang.org/x/crypto v0.14.0 // indirect golang.org/x/net v0.17.0 // indirect - golang.org/x/sys v0.13.0 // indirect + golang.org/x/sys v0.14.0 // indirect golang.org/x/text v0.13.0 // indirect google.golang.org/protobuf v1.31.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect diff --git a/go.sum b/go.sum index da36739..949fe00 100644 --- a/go.sum +++ b/go.sum @@ -60,6 +60,8 @@ github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1m github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= +github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= github.com/frankban/quicktest v1.11.0/go.mod h1:K+q6oSqb0W0Ininfk863uOk1lMy69l/P6txr3mVT54s= github.com/frankban/quicktest v1.11.2/go.mod h1:K+q6oSqb0W0Ininfk863uOk1lMy69l/P6txr3mVT54s= github.com/frankban/quicktest v1.13.0/go.mod h1:qLE0fzW0VuyUAJgPU19zByoIr0HtCHN/r/VLSOOIySU= @@ -181,8 +183,11 @@ github.com/leodido/go-urn v1.2.1 h1:BqpAaACuzVSgi/VLzGZIobT2z4v53pjosyNd9Yv6n/w= github.com/leodido/go-urn v1.2.1/go.mod h1:zt4jvISO2HfUBqxjfIshjdMTYS56ZS/qv49ictyFfxY= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= -github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng= -github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= +github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= +github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y= github.com/mattn/go-sqlite3 v1.14.16/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= @@ -387,8 +392,9 @@ golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE= -golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.14.0 h1:Vz7Qs629MkJkGyHxUlRHizWJRG2j8fbQKjELVSNhy7Q= +golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/main.go b/main.go index 2985dc7..334fdc3 100644 --- a/main.go +++ b/main.go @@ -1,6 +1,7 @@ package main import ( + "fmt" "log" "os" "os/signal" @@ -11,6 +12,9 @@ import ( "th7/pcb" "th7/ports" "th7/web" + "time" + + "github.com/fatih/color" ) func main() { @@ -53,6 +57,13 @@ func main() { webPort = web.NewGinAdapter(corePort, cfg) go webPort.Run() + color.Set(color.FgHiRed) + fmt.Printf("Started on: %s\n", time.Now().Format(time.DateTime)) + color.Unset() + color.Set(color.FgHiGreen) + fmt.Printf("TH7 web view is live on http://localhost:%d/\n", cfg.Board.Port) + color.Unset() + sig := <-kill log.Printf("Caught signal %v", sig) } diff --git a/web/gin.go b/web/gin.go index fd408e4..b810706 100644 --- a/web/gin.go +++ b/web/gin.go @@ -104,7 +104,8 @@ func NewGinAdapter(corePort ports.CorePort, cfg config.Config) *GinAdapter { adapter.port = cfg.Board.Port adapter.cfg = cfg - //adapter.router = gin.Default() + gin.SetMode(gin.ReleaseMode) + adapter.router = gin.New() // API