From 9ccd28b5305f6d21746dbf41af0269c243c9a068 Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 08:57:17 +0000 Subject: [PATCH 1/8] initial commit for stdout logs --- cmd/main.go | 5 +++ internal/service/router.go | 62 +++++++++++++++++++++++++++---------- internal/service/service.go | 22 +++++++++---- 3 files changed, 67 insertions(+), 22 deletions(-) diff --git a/cmd/main.go b/cmd/main.go index 44692a0..dfe80dc 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -105,6 +105,11 @@ func main() { Name: "http-pprof-enable", Usage: "enable golang http-pprof methods", }, + &cli.StringFlag{ + Name: "http-access-logs-level", + Usage: "set logger lovel for access-log logs", + Value: zerolog.LevelDebugValue, + }, // limiter settings &cli.BoolFlag{ diff --git a/internal/service/router.go b/internal/service/router.go index acbdbbf..9ccb39a 100644 --- a/internal/service/router.go +++ b/internal/service/router.go @@ -1,9 +1,12 @@ package service import ( + "errors" "fmt" + "io" "os" "runtime/debug" + "time" "github.com/anilibria/alice/internal/rewriter" "github.com/gofiber/fiber/v2" @@ -13,6 +16,7 @@ import ( "github.com/gofiber/fiber/v2/middleware/recover" "github.com/gofiber/fiber/v2/middleware/requestid" "github.com/gofiber/fiber/v2/middleware/skip" + "github.com/rs/zerolog" ) func (m *Service) fiberMiddlewareInitialization() { @@ -35,22 +39,48 @@ func (m *Service) fiberMiddlewareInitialization() { // prefixed logger initialization // - we send logs in syslog and stdout by default, // - but if access-log-stdout is 0 we use syslog output only - // !!! - // !!! - // !!! - // m.fb.Use(func(c *fiber.Ctx) error { - // logger := gLog.With().Str("id", c.Locals("requestid").(string)).Logger(). - // Level(m.runtime.Config.Get(runtime.ParamAccessLevel).(zerolog.Level)) - // syslogger := logger.Output(m.syslogWriter) - - // if m.runtime.Config.Get(runtime.ParamAccessStdout).(int) == 0 { - // logger = logger.Output(io.Discard) - // } - - // c.Locals("logger", &logger) - // c.Locals("syslogger", &syslogger) - // return c.Next() - // }) + m.fb.Use(func(c *fiber.Ctx) error { + logger := gLog.With().Str("id", c.Locals("requestid").(string)).Logger(). + Level(m.accesslogLevel) + syslogger := logger.Output(m.syslogWriter) + + if zerolog.GlobalLevel() > zerolog.DebugLevel { + logger = logger.Output(io.Discard) + } + + c.Locals("logger", &logger) + c.Locals("syslogger", &syslogger) + return c.Next() + }) + + // time collector + logger + m.fb.Use(func(c *fiber.Ctx) (e error) { + started, e := time.Now(), c.Next() + stopped := time.Now() + elapsed := stopped.Sub(started).Round(time.Microsecond) + + status, lvl, err := c.Response().StatusCode(), m.accesslogLevel, new(fiber.Error) + if errors.As(e, &err) || status >= fiber.StatusInternalServerError { + status, lvl = err.Code, zerolog.WarnLevel + } + + rlog(c).WithLevel(lvl). + Int("status", status). + Str("method", c.Method()). + Str("path", c.Path()). + Str("ip", c.IP()). + Dur("latency", elapsed). + Str("user-agent", c.Get(fiber.HeaderUserAgent)).Msg("") + m.rsyslog(c).WithLevel(lvl). + Int("status", status). + Str("method", c.Method()). + Str("path", c.Path()). + Str("ip", c.IP()). + Dur("latency", elapsed). + Str("user-agent", c.Get(fiber.HeaderUserAgent)).Msg("") + + return + }) // ! LIMITER // media.Use(limiter.New(limiter.Config{ diff --git a/internal/service/service.go b/internal/service/service.go index adde34f..0d6436d 100644 --- a/internal/service/service.go +++ b/internal/service/service.go @@ -31,7 +31,8 @@ type Service struct { fb *fiber.App fbstor fiber.Storage - syslogWriter io.Writer + syslogWriter io.Writer + accesslogLevel zerolog.Level } func NewService(c *cli.Context, l *zerolog.Logger, s io.Writer) *Service { @@ -130,7 +131,16 @@ func (m *Service) Bootstrap() (e error) { defer gAbort() // BOOTSTRAP SECTION: - // ! http (must be at he end of bootstrap) + // parse log level for fiber logs + if m.accesslogLevel, e = zerolog.ParseLevel(gCli.String("http-access-logs-level")); e != nil { + return + } + + // another subsystems + // ? write initialization block above the http + // ... + + // ! http server bootstrap (shall be at the end of bootstrap section) gofunc(&wg, func() { gLog.Debug().Msg("starting fiber http server...") defer gLog.Debug().Msg("fiber http server has been stopped") @@ -142,10 +152,6 @@ func (m *Service) Bootstrap() (e error) { } }) - // another subsystems - // ? write initialization block above the http - // ... - // main event loop wg.Add(1) go m.loop(echan, wg.Done) @@ -194,3 +200,7 @@ func rlog(c *fiber.Ctx) *zerolog.Logger { // return c.Locals("logger").(*zerolog.Logger) return gLog } + +func (m *Service) rsyslog(c *fiber.Ctx) (l *zerolog.Logger) { + return c.Locals("syslogger").(*zerolog.Logger) +} From 4108f2fa4169316a38e2c66fe742a8cd4e9f5475 Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 09:22:35 +0000 Subject: [PATCH 2/8] main.go - flags refactoring --- cmd/main.go | 63 ++++++++++++++++++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 22 deletions(-) diff --git a/cmd/main.go b/cmd/main.go index dfe80dc..84484ad 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -42,7 +42,12 @@ func main() { // application app := cli.NewApp() - cli.VersionFlag = &cli.BoolFlag{Name: "version", Aliases: []string{"V"}} + cli.VersionFlag = &cli.BoolFlag{ + Name: "version", + Usage: "show version", + Aliases: []string{"V"}, + DisableDefaultText: true, + } app.Name = "alice" app.Version = fmt.Sprintf("%s\t%s", version, buildtime) @@ -65,64 +70,78 @@ func main() { EnvVars: []string{"LOG_LEVEL"}, }, &cli.BoolFlag{ - Name: "quite", - Aliases: []string{"q"}, - Usage: "Flag is equivalent to --log-level=quite", + Name: "quite", + Aliases: []string{"q"}, + Usage: "equivalent to --log-level=quite", + DisableDefaultText: true, }, // common settings : syslog &cli.StringFlag{ Name: "syslog-server", + Usage: "syslog server (optional); syslog sender is not used if value is empty", Value: "", EnvVars: []string{"SYSLOG_ADDRESS"}, }, &cli.StringFlag{ Name: "syslog-proto", + Usage: "syslog protocol (optional); tcp or udp is possible", Value: "tcp", }, &cli.StringFlag{ Name: "syslog-tag", + Usage: "optional setting; more information in syslog RFC", Value: "", }, // fiber-server settings &cli.StringFlag{ Name: "http-listen-addr", - Usage: "Ex: 127.0.0.1:8080, :8080", + Usage: "format - 127.0.0.1:8080, :8080", Value: "127.0.0.1:8080", }, &cli.StringFlag{ Name: "http-trusted-proxies", - Usage: "Ex: 10.0.0.0/8; Separated by comma", + Usage: "format - 192.168.0.0/16; can be separated by comma", }, &cli.BoolFlag{ Name: "http-prefork", - Usage: `Enables use of the SO_REUSEPORT socket option; + Usage: `enables use of the SO_REUSEPORT socket option; if enabled, the application will need to be ran - through a shell because prefork mode sets environment variables`, + through a shell because prefork mode sets environment variables; + EXPERIMENTAL! USE CAREFULLY!`, + DisableDefaultText: true, }, &cli.BoolFlag{ - Name: "http-pprof-enable", - Usage: "enable golang http-pprof methods", + Name: "http-pprof-enable", + Usage: "enable golang http-pprof methods", + DisableDefaultText: true, }, &cli.StringFlag{ Name: "http-access-logs-level", - Usage: "set logger lovel for access-log logs", + Usage: "set logger level for access-log logs", Value: zerolog.LevelDebugValue, }, // limiter settings - &cli.BoolFlag{ - Name: "limiter-use-bbolt", - Usage: "use bbolt key\value file database instead of memory database", - }, - &cli.IntFlag{ - Name: "limiter-max-req", - Value: 200, - }, - &cli.DurationFlag{ - Name: "limiter-records-duration", - Value: 5 * time.Minute, + // &cli.BoolFlag{ + // Name: "limiter-use-bbolt", + // Usage: "use bbolt key\value file database instead of memory database", + // }, + // &cli.IntFlag{ + // Name: "limiter-max-req", + // Value: 200, + // }, + // &cli.DurationFlag{ + // Name: "limiter-records-duration", + // Value: 5 * time.Minute, + // }, + + // rewriter settings + &cli.StringFlag{ + Name: "rewriter-response-header", + Usage: "header for parsed payload", + Value: "X-Parsed-Form", }, } From 6851eaa433c7a459de3c333af066c8689caa5196 Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 09:22:48 +0000 Subject: [PATCH 3/8] some changes --- internal/rewriter/rewriter.go | 3 ++- internal/service/router.go | 12 ++++++++++++ internal/service/service.go | 30 +++++++++++++----------------- utils/locals.go | 7 +++++++ 4 files changed, 34 insertions(+), 18 deletions(-) create mode 100644 utils/locals.go diff --git a/internal/rewriter/rewriter.go b/internal/rewriter/rewriter.go index 5a4c140..4f2666c 100644 --- a/internal/rewriter/rewriter.go +++ b/internal/rewriter/rewriter.go @@ -8,6 +8,7 @@ import ( "sort" "sync" + "github.com/anilibria/alice/utils" "github.com/gofiber/fiber/v2" "github.com/valyala/fasthttp" ) @@ -73,6 +74,6 @@ func (*Rewriter) rewrite(c *fiber.Ctx) (e error) { buf.WriteString(fmt.Sprintf("%s=%s&", v, c.FormValue(v))) } - c.Set("X-Parsed-Form", string(buf.Bytes())[0:buf.Len()-1]) + c.Set(c.Locals(utils.FLKRewriterHeader).(string), string(buf.Bytes())[0:buf.Len()-1]) return } diff --git a/internal/service/router.go b/internal/service/router.go index 9ccb39a..bdb2efe 100644 --- a/internal/service/router.go +++ b/internal/service/router.go @@ -9,6 +9,7 @@ import ( "time" "github.com/anilibria/alice/internal/rewriter" + "github.com/anilibria/alice/utils" "github.com/gofiber/fiber/v2" "github.com/gofiber/fiber/v2/middleware/compress" "github.com/gofiber/fiber/v2/middleware/favicon" @@ -36,6 +37,12 @@ func (m *Service) fiberMiddlewareInitialization() { // request id m.fb.Use(requestid.New()) + // insert payload for futher processing + m.fb.Use(func(c *fiber.Ctx) error { + c.Locals(utils.FLKRewriterHeader, gCli.String("rewriter-response-header")) + return c.Next() + }) + // prefixed logger initialization // - we send logs in syslog and stdout by default, // - but if access-log-stdout is 0 we use syslog output only @@ -64,12 +71,16 @@ func (m *Service) fiberMiddlewareInitialization() { status, lvl = err.Code, zerolog.WarnLevel } + // get rewriter payload + rpayload := c.Response().Header.Peek(c.Locals(utils.FLKRewriterHeader).(string)) + rlog(c).WithLevel(lvl). Int("status", status). Str("method", c.Method()). Str("path", c.Path()). Str("ip", c.IP()). Dur("latency", elapsed). + Str("payload", string(rpayload)). Str("user-agent", c.Get(fiber.HeaderUserAgent)).Msg("") m.rsyslog(c).WithLevel(lvl). Int("status", status). @@ -77,6 +88,7 @@ func (m *Service) fiberMiddlewareInitialization() { Str("path", c.Path()). Str("ip", c.IP()). Dur("latency", elapsed). + Str("payload", string(rpayload)). Str("user-agent", c.Get(fiber.HeaderUserAgent)).Msg("") return diff --git a/internal/service/service.go b/internal/service/service.go index 0d6436d..34b4afd 100644 --- a/internal/service/service.go +++ b/internal/service/service.go @@ -3,7 +3,6 @@ package service import ( "context" "errors" - "fmt" "io" "os" "os/signal" @@ -15,8 +14,6 @@ import ( "github.com/gofiber/fiber/v2" "github.com/rs/zerolog" "github.com/urfave/cli/v2" - - bolt "github.com/gofiber/storage/bbolt" ) var ( @@ -89,18 +86,18 @@ func NewService(c *cli.Context, l *zerolog.Logger, s io.Writer) *Service { }) // storage setup for fiber's limiter - if gCli.Bool("limiter-use-bbolt") { - var prefix string - if prefix = gCli.String("database-prefix"); prefix == "" { - prefix = "." - } - - service.fbstor = bolt.New(bolt.Config{ - Database: fmt.Sprintf("%s/%s.db", prefix, gCli.App.Name), - Bucket: "application-limiter", - Reset: false, - }) - } + // if gCli.Bool("limiter-use-bbolt") { + // var prefix string + // if prefix = gCli.String("database-prefix"); prefix == "" { + // prefix = "." + // } + + // service.fbstor = bolt.New(bolt.Config{ + // Database: fmt.Sprintf("%s/%s.db", prefix, gCli.App.Name), + // Bucket: "application-limiter", + // Reset: false, + // }) + // } // fiber configuration service.fiberMiddlewareInitialization() @@ -197,8 +194,7 @@ LOOP: // ? TO DELETE func rlog(c *fiber.Ctx) *zerolog.Logger { - // return c.Locals("logger").(*zerolog.Logger) - return gLog + return c.Locals("logger").(*zerolog.Logger) } func (m *Service) rsyslog(c *fiber.Ctx) (l *zerolog.Logger) { diff --git a/utils/locals.go b/utils/locals.go new file mode 100644 index 0000000..5d89838 --- /dev/null +++ b/utils/locals.go @@ -0,0 +1,7 @@ +package utils + +type FiberLocalsKey uint8 + +const ( + FLKRewriterHeader FiberLocalsKey = iota +) From 924824d6c73a60597b904830de87099bd510b099 Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 09:24:19 +0000 Subject: [PATCH 4/8] go work and go mod --- go.mod | 3 --- go.sum | 10 ---------- 2 files changed, 13 deletions(-) diff --git a/go.mod b/go.mod index 409c09b..73c74ee 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,6 @@ go 1.19 require ( github.com/gofiber/fiber/v2 v2.52.4 - github.com/gofiber/storage/bbolt v1.3.5 github.com/rs/zerolog v1.33.0 github.com/urfave/cli/v2 v2.27.2 github.com/valyala/fasthttp v1.55.0 @@ -13,7 +12,6 @@ require ( require ( github.com/andybalholm/brotli v1.1.0 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect - github.com/gofiber/utils v1.0.1 // indirect github.com/google/uuid v1.5.0 // indirect github.com/klauspost/compress v1.17.9 // indirect github.com/mattn/go-colorable v0.1.13 // indirect @@ -24,6 +22,5 @@ require ( github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/tcplisten v1.0.0 // indirect github.com/xrash/smetrics v0.0.0-20240312152122-5f08fbb34913 // indirect - go.etcd.io/bbolt v1.3.7 // indirect golang.org/x/sys v0.21.0 // indirect ) diff --git a/go.sum b/go.sum index 7f8bb1d..f2f4b82 100644 --- a/go.sum +++ b/go.sum @@ -3,14 +3,9 @@ github.com/andybalholm/brotli v1.1.0/go.mod h1:sms7XGricyQI9K10gOSf56VKKWS4oLer5 github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4= github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofiber/fiber/v2 v2.52.4 h1:P+T+4iK7VaqUsq2PALYEfBBo6bJZ4q3FP8cZ84EggTM= github.com/gofiber/fiber/v2 v2.52.4/go.mod h1:KEOE+cXMhXG0zHc9d8+E38hoX+ZN7bhOtgeF2oT6jrQ= -github.com/gofiber/storage/bbolt v1.3.5 h1:9ZDMTbeah5tfj3eX+hFu3F1AHiBO117ce3Gel7tkxlk= -github.com/gofiber/storage/bbolt v1.3.5/go.mod h1:GibrOAQTFOzzzWWVCgq+V+gS8dUbaPeAMGI4FNZ32sI= -github.com/gofiber/utils v1.0.1 h1:knct4cXwBipWQqFrOy1Pv6UcgPM+EXo9jDgc66V1Qio= -github.com/gofiber/utils v1.0.1/go.mod h1:pacRFtghAE3UoknMOUiXh2Io/nLWSUHtQCi/3QASsOc= github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= @@ -24,7 +19,6 @@ github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg= @@ -32,7 +26,6 @@ github.com/rs/zerolog v1.33.0 h1:1cU2KZkvPxNyfgEmhHAz/1A9Bz+llsdYzklWFzgp0r8= github.com/rs/zerolog v1.33.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= github.com/urfave/cli/v2 v2.27.2 h1:6e0H+AkS+zDckwPCUrZkKX38mRaau4nL2uipkJpbkcI= github.com/urfave/cli/v2 v2.27.2/go.mod h1:g0+79LmHHATl7DAcHO99smiR/T7uGLw84w8Y42x+4eM= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= @@ -43,11 +36,8 @@ github.com/valyala/tcplisten v1.0.0 h1:rBHj/Xf+E1tRGZyWIWwJDiRY0zc1Js+CV5DqwacVS github.com/valyala/tcplisten v1.0.0/go.mod h1:T0xQ8SeCZGxckz9qRXTfG43PvQ/mcWh7FwZEA7Ioqkc= github.com/xrash/smetrics v0.0.0-20240312152122-5f08fbb34913 h1:+qGGcbkzsfDQNPPe9UDgpxAWQrhbbBXOYJFQDq/dtJw= github.com/xrash/smetrics v0.0.0-20240312152122-5f08fbb34913/go.mod h1:4aEEwZQutDLsQv2Deui4iYQ6DWTxR14g6m8Wv88+Xqk= -go.etcd.io/bbolt v1.3.7 h1:j+zJOnnEjF/kyHlDDgGnVL/AIqIJPq8UoB2GSNfkUfQ= -go.etcd.io/bbolt v1.3.7/go.mod h1:N9Mkw9X8x5fupy0IKsmuqVtoGDyxsaDlbk4Rd05IAQw= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= From d2f5fc4e369246d38235babf659ac855b677512b Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 09:27:15 +0000 Subject: [PATCH 5/8] main.go - linter issue fix --- cmd/main.go | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/cmd/main.go b/cmd/main.go index 84484ad..98f75e2 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -51,14 +51,12 @@ func main() { app.Name = "alice" app.Version = fmt.Sprintf("%s\t%s", version, buildtime) - app.Authors = []*cli.Author{ - &cli.Author{ - Name: "MindHunter86", - Email: "mindhunter86@vkom.cc", - }, - } app.Copyright = "(c) 2024 mindhunter86\nwith love for AniLibria project" app.Usage = "AniLibria legacy api cache service" + app.Authors = append(app.Authors, &cli.Author{ + Name: "MindHunter86", + Email: "mindhunter86@vkom.cc", + }) app.Flags = []cli.Flag{ // common settings From 35e2cac42f96982f0b1a30aa093b10869284fbcf Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 09:28:22 +0000 Subject: [PATCH 6/8] CI - add ghcr login --- .github/workflows/alice-builder.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/alice-builder.yml b/.github/workflows/alice-builder.yml index 5e7c38b..f4b7de8 100644 --- a/.github/workflows/alice-builder.yml +++ b/.github/workflows/alice-builder.yml @@ -50,6 +50,11 @@ jobs: steps: - uses: actions/checkout@v4 - uses: depot/setup-action@v1 + - uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} # https://github.community/t/additional-function-s-lowercase-uppercase/140632 - name: lowercase repository name run: | From 06cd067b51f147ce6aa43c29bd9e9059a896ffa8 Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 09:32:53 +0000 Subject: [PATCH 7/8] fix SCC-U1000 --- internal/service/service.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/service/service.go b/internal/service/service.go index 34b4afd..f4319e9 100644 --- a/internal/service/service.go +++ b/internal/service/service.go @@ -25,8 +25,8 @@ var ( ) type Service struct { - fb *fiber.App - fbstor fiber.Storage + fb *fiber.App + // fbstor fiber.Storage syslogWriter io.Writer accesslogLevel zerolog.Level From 184720bf12bc2928dd75e569993f7bce258309cf Mon Sep 17 00:00:00 2001 From: Vadimka Komissarov Date: Sat, 29 Jun 2024 09:35:07 +0000 Subject: [PATCH 8/8] fix RVV-B0013 --- internal/service/router.go | 2 +- internal/service/service.go | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/internal/service/router.go b/internal/service/router.go index bdb2efe..266d2c8 100644 --- a/internal/service/router.go +++ b/internal/service/router.go @@ -82,7 +82,7 @@ func (m *Service) fiberMiddlewareInitialization() { Dur("latency", elapsed). Str("payload", string(rpayload)). Str("user-agent", c.Get(fiber.HeaderUserAgent)).Msg("") - m.rsyslog(c).WithLevel(lvl). + rsyslog(c).WithLevel(lvl). Int("status", status). Str("method", c.Method()). Str("path", c.Path()). diff --git a/internal/service/service.go b/internal/service/service.go index f4319e9..6b829df 100644 --- a/internal/service/service.go +++ b/internal/service/service.go @@ -192,11 +192,10 @@ LOOP: } } -// ? TO DELETE func rlog(c *fiber.Ctx) *zerolog.Logger { return c.Locals("logger").(*zerolog.Logger) } -func (m *Service) rsyslog(c *fiber.Ctx) (l *zerolog.Logger) { +func rsyslog(c *fiber.Ctx) (l *zerolog.Logger) { return c.Locals("syslogger").(*zerolog.Logger) }