From 7de40228e93bbab715e0bdf1ce14874b3a2f0835 Mon Sep 17 00:00:00 2001 From: "navid.shariaty" Date: Mon, 26 Jun 2023 00:32:41 +0330 Subject: [PATCH 1/2] fix typo and configmap parse --- .gitignore | 3 ++- cmd/server.go | 12 ++++++------ internal/api/http/handlers.go | 8 ++++---- internal/api/http/middlewares.go | 2 +- internal/api/http/server.go | 8 ++++---- internal/config/load.go | 9 ++++----- internal/querier/querier.go | 8 ++++---- internal/querier/query.go | 6 +++--- 8 files changed, 28 insertions(+), 28 deletions(-) diff --git a/.gitignore b/.gitignore index 3b735ec..bb07669 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ *.dll *.so *.dylib +.idea/ # Test binary, built with `go test -c` *.test @@ -15,7 +16,7 @@ *.out # Dependency directories (remove the comment below to include it) -# vendor/ +vendor/ # Go workspace file go.work diff --git a/cmd/server.go b/cmd/server.go index 7d182dd..4948ae2 100644 --- a/cmd/server.go +++ b/cmd/server.go @@ -26,17 +26,17 @@ func (cmd Server) Command(trap chan os.Signal) *cobra.Command { } func (cmd *Server) main(cfg *config.Config, trap chan os.Signal) { - logger := logger.NewZap(cfg.Logger) + loggerObj := logger.NewZap(cfg.Logger) - querier := querier.New(cfg.Querier, logger) - go querier.Start() + querierObj := querier.New(cfg.Querier, loggerObj) + go querierObj.Start() - server := http.New(logger, querier) + server := http.New(loggerObj, querierObj) go server.Serve(8080) // Keep this at the bottom of the main function field := zap.String("signal trap", (<-trap).String()) - logger.Info("exiting by receiving a unix signal", field) + loggerObj.Info("exiting by receiving a unix signal", field) - querier.Stop() + querierObj.Stop() } diff --git a/internal/api/http/handlers.go b/internal/api/http/handlers.go index adaceac..4a543dc 100644 --- a/internal/api/http/handlers.go +++ b/internal/api/http/handlers.go @@ -7,20 +7,20 @@ import ( "github.com/snapp-incubator/snappcloud-status-backend/internal/models" ) -func (handler *Server) liveness(c *gin.Context) { +func (server *Server) liveness(c *gin.Context) { c.Status(http.StatusOK) } -func (handler *Server) readiness(c *gin.Context) { +func (server *Server) readiness(c *gin.Context) { c.Status(http.StatusOK) } -func (handler *Server) services(c *gin.Context) { +func (server *Server) services(c *gin.Context) { c.JSON(http.StatusOK, &struct { Message string `json:"message"` Services []models.Service `json:"services,omitempty"` }{ Message: "All services retrieved successfuly.", - Services: handler.querier.GetServices(), + Services: server.querier.GetServices(), }) } diff --git a/internal/api/http/middlewares.go b/internal/api/http/middlewares.go index acaead3..dbbd2a0 100644 --- a/internal/api/http/middlewares.go +++ b/internal/api/http/middlewares.go @@ -4,7 +4,7 @@ import ( "github.com/gin-gonic/gin" ) -func (s *Server) corsMiddleware() gin.HandlerFunc { +func (server *Server) corsMiddleware() gin.HandlerFunc { return func(c *gin.Context) { c.Writer.Header().Set("Access-Control-Allow-Origin", "*") c.Writer.Header().Set("Access-Control-Allow-Methods", "POST, GET, OPTIONS, PUT, DELETE, UPDATE") diff --git a/internal/api/http/server.go b/internal/api/http/server.go index d65638c..ed9d1b4 100644 --- a/internal/api/http/server.go +++ b/internal/api/http/server.go @@ -23,10 +23,10 @@ func New(log *zap.Logger, querier querier.Querier) *Server { // expose metrics to prometheus server server.engine.GET("/metrics", gin.WrapH(promhttp.Handler())) - // healthness endpoints - healthz := server.engine.Group("healthz") - healthz.GET("/liveness", server.liveness) - healthz.GET("/readiness", server.readiness) + // health endpoints + healthZ := server.engine.Group("healthz") + healthZ.GET("/liveness", server.liveness) + healthZ.GET("/readiness", server.readiness) v1 := server.engine.Group("api/v1") v1.GET("/services", server.services) diff --git a/internal/config/load.go b/internal/config/load.go index d9852f7..58af2e4 100644 --- a/internal/config/load.go +++ b/internal/config/load.go @@ -14,8 +14,7 @@ import ( ) const ( - delimeter = "." - seperator = "__" + delimiter = "." tagName = "koanf" @@ -24,7 +23,7 @@ const ( ) func Load(print bool) *Config { - k := koanf.New(delimeter) + k := koanf.New(delimiter) // load default configuration from file if err := LoadValues(k); err != nil { @@ -62,7 +61,7 @@ func LoadValues(k *koanf.Koanf) error { } func loadConfigmap(k *koanf.Koanf) error { - // this is a hack to check wheather we are in cluster or not + // this is a hack to check whether we are in cluster or not if _, err := rest.InClusterConfig(); err != nil { if err == rest.ErrNotInCluster { return nil @@ -75,7 +74,7 @@ func loadConfigmap(k *koanf.Koanf) error { panic(fmt.Errorf("error reading currnet namespace: %v", err)) } - if err := k.Load(rawbytes.Provider(cm), nil); err != nil { + if err := k.Load(rawbytes.Provider(cm), yaml.Parser()); err != nil { return fmt.Errorf("error loading values: %s", err) } diff --git a/internal/querier/querier.go b/internal/querier/querier.go index 3632c63..9033e2d 100644 --- a/internal/querier/querier.go +++ b/internal/querier/querier.go @@ -16,8 +16,8 @@ type Querier interface { } type querier struct { - config *Config - loggger *zap.Logger + config *Config + logger *zap.Logger ticker *time.Ticker done chan bool @@ -33,7 +33,7 @@ type state struct { } func New(cfg *Config, lg *zap.Logger) Querier { - instance := &querier{config: cfg, loggger: lg} + instance := &querier{config: cfg, logger: lg} instance.ticker = time.NewTicker(cfg.RequestInterval) instance.done = make(chan bool) @@ -59,7 +59,7 @@ func (q *querier) initializeState() { } } -// Start, run this function in a seperate goroutine +// Start run this function in a separate goroutine func (q *querier) Start() { for { select { diff --git a/internal/querier/query.go b/internal/querier/query.go index 2bb9a86..50b3ce4 100644 --- a/internal/querier/query.go +++ b/internal/querier/query.go @@ -115,14 +115,14 @@ func (q *querier) queryThanos(query string, timestamp string) result { }{} if err = json.Unmarshal(rawBody, body); err != nil { - q.loggger.Error("Error unmarshaling query result", zap.Error(err)) + q.logger.Error("Error unmarshalling query result", zap.Error(err)) return } for index := 0; index < len(body.Data.Result); index++ { if len(body.Data.Result[index].Value) != 2 { resultChannel <- badResult - q.loggger.Error("Invalid result value length") + q.logger.Error("Invalid result value length") return } @@ -136,7 +136,7 @@ func (q *querier) queryThanos(query string, timestamp string) result { } resultChannel <- badResult - q.loggger.Error("Invalid result value type, it should be 0 or 1") + q.logger.Error("Invalid result value type, it should be 0 or 1") return } From efb67b6e3327261c642b73acca7dffda40e403ee Mon Sep 17 00:00:00 2001 From: "navid.shariaty" Date: Mon, 26 Jun 2023 00:48:24 +0330 Subject: [PATCH 2/2] fix typo --- internal/api/http/handlers.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/api/http/handlers.go b/internal/api/http/handlers.go index 4a543dc..e0a2b64 100644 --- a/internal/api/http/handlers.go +++ b/internal/api/http/handlers.go @@ -20,7 +20,7 @@ func (server *Server) services(c *gin.Context) { Message string `json:"message"` Services []models.Service `json:"services,omitempty"` }{ - Message: "All services retrieved successfuly.", + Message: "All services retrieved successfully.", Services: server.querier.GetServices(), }) }