Skip to content

Commit

Permalink
Clean up logging and remove unused file (#136)
Browse files Browse the repository at this point in the history
* Clean up logging

Signed-off-by: Arrobo, Gabriel <[email protected]>

* Remove unused file

Signed-off-by: Arrobo, Gabriel <[email protected]>

* Update golangci file

Signed-off-by: Arrobo, Gabriel <[email protected]>

---------

Signed-off-by: Arrobo, Gabriel <[email protected]>
  • Loading branch information
gab-arrobo authored Oct 22, 2024
1 parent a967342 commit 9e22362
Show file tree
Hide file tree
Showing 5 changed files with 49 additions and 102 deletions.
20 changes: 0 additions & 20 deletions .fossa.yml

This file was deleted.

41 changes: 14 additions & 27 deletions .golangci.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
# SPDX-FileCopyrightText: 2024 Intel Corporation
# Copyright 2019 free5GC.org
#
# SPDX-License-Identifier: Apache-2.0
#

# This file contains all available configuration options
# with their default values.
Expand All @@ -28,19 +26,6 @@ run:
# default is true. Enables skipping of directories:
# vendor$, third_party$, testdata$, examples$, Godeps$, builtin$
skip-dirs-use-default: true
# which files to skip: they will be analyzed, but issues from them
# won't be reported. Default value is empty list, but there is
# no need to include all autogenerated files, we confidently recognize
# autogenerated files. If it's not please let us know.
# "/" will be replaced by current OS file path separator to properly work
# on Windows.
skip-files:
- "api_.*\\.go$"
- "model_.*\\.go$"
- "routers.go"
- "client.go"
- "configuration.go"
- "nas.go"
# by default isn't set. If set we pass it to "go list -mod={option}". From "go help modules":
# If invoked with -mod=readonly, the go command is disallowed from the implicit
# automatic updating of go.mod described above. Instead, it fails when any changes
Expand All @@ -56,7 +41,7 @@ run:
# output configuration options
output:
# colored-line-number|line-number|json|tab|checkstyle|code-climate, default is "colored-line-number"
format: colored-line-number
formats: colored-line-number
# print lines of code with issue, default is true
print-issued-lines: true
# print linter name in the end of issue text, default is true
Expand Down Expand Up @@ -139,10 +124,14 @@ linters-settings:
# minimal confidence for issues, default is 0.8
min-confidence: 0.8
gomnd:
settings:
mnd:
# the list of enabled checks, see https://github.com/tommy-muehle/go-mnd/#checks for description.
checks: argument,case,condition,operation,return,assign
# the list of enabled checks, see https://github.com/tommy-muehle/go-mnd/#checks for description.
checks:
- argument
- case
- condition
- operation
- return
- assign
gomodguard:
allowed:
modules: # List of allowed modules
Expand All @@ -160,8 +149,6 @@ linters-settings:
# version: "< 1.1.0" # Version constraint, see https://github.com/Masterminds/semver#basic-comparisons
# reason: "testing if blocked version constraint works." # Reason why the version constraint exists. (Optional)
govet:
# report about shadowed variables
check-shadowing: true
# settings per analyzer
settings:
printf: # analyzer name, run `go tool vet help` to see all analyzers
Expand Down Expand Up @@ -207,8 +194,6 @@ linters-settings:
whitespace:
multi-if: false # Enforces newlines (or comments) after every multi-line if statement
multi-func: false # Enforces newlines (or comments) after every multi-line function signature
gci:
local-prefixes: "bitbucket.org"
misspell:
#locale: US
ignore-words:
Expand Down Expand Up @@ -263,9 +248,9 @@ linters:
- dogsled
- bodyclose
- asciicheck
#- stylecheck
# - unparam
# - wsl
# - stylecheck
# - unparam
# - wsl

#disable-all: false
fast: true
Expand All @@ -276,6 +261,8 @@ issues:
# excluded by default patterns execute `golangci-lint run --help`
exclude:
# Excluding configuration per-path, per-linter, per-text and per-source
exclude-files:
- "routers.go"
exclude-rules:
# Exclude some linters from running on tests files.
# Independently from option `exclude` we use default exclude patterns,
Expand Down
11 changes: 2 additions & 9 deletions factory/factory.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ import (
"github.com/omec-project/config5g/proto/client"
protos "github.com/omec-project/config5g/proto/sdcoreConfig"
"github.com/omec-project/udr/logger"
"go.uber.org/zap"
"gopkg.in/yaml.v2"
)

Expand All @@ -33,12 +32,6 @@ type SmPolicyUpdateEntry struct {
Dnn string
}

var initLog *zap.SugaredLogger

func init() {
initLog = logger.InitLog
}

// TODO: Support configuration update from REST api
func InitConfigFactory(f string) error {
if content, err := os.ReadFile(f); err != nil {
Expand All @@ -61,13 +54,13 @@ func InitConfigFactory(f string) error {
}
roc := os.Getenv("MANAGED_BY_CONFIG_POD")
if roc == "true" {
initLog.Infoln("MANAGED_BY_CONFIG_POD is true")
logger.InitLog.Infoln("MANAGED_BY_CONFIG_POD is true")
commChannel := client.ConfigWatcher(UdrConfig.Configuration.WebuiUri)
ConfigUpdateDbTrigger = make(chan *UpdateDb, 10)
go UdrConfig.updateConfig(commChannel, ConfigUpdateDbTrigger)
} else {
go func() {
initLog.Infoln("Use helm chart config ")
logger.InitLog.Infoln("use helm chart config")
ConfigPodTrigger <- true
}()
}
Expand Down
68 changes: 31 additions & 37 deletions service/init.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,17 +56,11 @@ var udrCLi = []cli.Flag{
},
}

var initLog *zap.SugaredLogger

var (
KeepAliveTimer *time.Timer
KeepAliveTimerMutex sync.Mutex
)

func init() {
initLog = logger.InitLog
}

func (*UDR) GetCliCmd() (flags []cli.Flag) {
return udrCLi
}
Expand Down Expand Up @@ -98,22 +92,22 @@ func (udr *UDR) Initialize(c *cli.Context) error {

func (udr *UDR) setLogLevel() {
if factory.UdrConfig.Logger == nil {
initLog.Warnln("UDR config without log level setting!!!")
logger.InitLog.Warnln("UDR config without log level setting")
return
}

if factory.UdrConfig.Logger.UDR != nil {
if factory.UdrConfig.Logger.UDR.DebugLevel != "" {
if level, err := zapcore.ParseLevel(factory.UdrConfig.Logger.UDR.DebugLevel); err != nil {
initLog.Warnf("UDR Log level [%s] is invalid, set to [info] level",
logger.InitLog.Warnf("UDR Log level [%s] is invalid, set to [info] level",
factory.UdrConfig.Logger.UDR.DebugLevel)
logger.SetLogLevel(zap.InfoLevel)
} else {
initLog.Infof("UDR Log level is set to [%s] level", level)
logger.InitLog.Infof("UDR Log level is set to [%s] level", level)
logger.SetLogLevel(level)
}
} else {
initLog.Infoln("UDR Log level not set. Default set to [info] level")
logger.InitLog.Infoln("UDR Log level not set. Default set to [info] level")
logger.SetLogLevel(zap.InfoLevel)
}
}
Expand Down Expand Up @@ -151,11 +145,11 @@ func (udr *UDR) Start() {
// get config file info
config := factory.UdrConfig
mongodb := config.Configuration.Mongodb
initLog.Infof("udr config info: Version[%s] Description[%s]", config.Info.Version, config.Info.Description)
logger.InitLog.Infof("udr config info: Version[%s] Description[%s]", config.Info.Version, config.Info.Description)

// Connect to MongoDB
producer.ConnectMongo(mongodb.Url, mongodb.Name, mongodb.AuthUrl, mongodb.AuthKeysDbName)
initLog.Infoln("server started")
logger.InitLog.Infoln("server started")

router := utilLogger.NewGinWithZap(logger.GinLog)

Expand Down Expand Up @@ -183,12 +177,12 @@ func (udr *UDR) Start() {

server, err := http2_util.NewServer(addr, udrLogPath, router)
if server == nil {
initLog.Errorf("initialize HTTP server failed: %+v", err)
logger.InitLog.Errorf("initialize HTTP server failed: %+v", err)
return
}

if err != nil {
initLog.Warnf("initialize HTTP server: %+v", err)
logger.InitLog.Warnf("initialize HTTP server: %+v", err)
}

serverScheme := factory.UdrConfig.Configuration.Sbi.Scheme
Expand All @@ -199,15 +193,15 @@ func (udr *UDR) Start() {
}

if err != nil {
initLog.Fatalf("http server setup failed: %+v", err)
logger.InitLog.Fatalf("http server setup failed: %+v", err)
}
}

func (udr *UDR) Exec(c *cli.Context) error {
// UDR.Initialize(cfgPath, c)
initLog.Debugln("args:", c.String("udrcfg"))
logger.InitLog.Debugln("args:", c.String("udrcfg"))
args := udr.FilterCli(c)
initLog.Debugln("filter:", args)
logger.InitLog.Debugln("filter:", args)
command := exec.Command("./udr", args...)

if err := udr.Initialize(c); err != nil {
Expand All @@ -216,7 +210,7 @@ func (udr *UDR) Exec(c *cli.Context) error {

var stdout io.ReadCloser
if readCloser, err := command.StdoutPipe(); err != nil {
initLog.Fatalln(err)
logger.InitLog.Fatalln(err)
} else {
stdout = readCloser
}
Expand All @@ -225,29 +219,29 @@ func (udr *UDR) Exec(c *cli.Context) error {
go func() {
in := bufio.NewScanner(stdout)
for in.Scan() {
initLog.Debugln(in.Text())
logger.InitLog.Debugln(in.Text())
}
wg.Done()
}()

var stderr io.ReadCloser
if readCloser, err := command.StderrPipe(); err != nil {
initLog.Fatalln(err)
logger.InitLog.Fatalln(err)
} else {
stderr = readCloser
}
go func() {
in := bufio.NewScanner(stderr)
for in.Scan() {
initLog.Debugln(in.Text())
logger.InitLog.Debugln(in.Text())
}
wg.Done()
}()

var err error
go func() {
if errormessage := command.Start(); err != nil {
initLog.Errorln("command.Start Failed")
logger.InitLog.Errorln("command.Start Failed")
err = errormessage
}
wg.Done()
Expand All @@ -258,30 +252,30 @@ func (udr *UDR) Exec(c *cli.Context) error {
}

func (udr *UDR) Terminate() {
logger.InitLog.Infof("terminating UDR...")
logger.InitLog.Infoln("terminating UDR")
// deregister with NRF
problemDetails, err := consumer.SendDeregisterNFInstance()
if problemDetails != nil {
logger.InitLog.Errorf("deregister NF instance Failed Problem[%+v]", problemDetails)
} else if err != nil {
logger.InitLog.Errorf("deregister NF instance Error[%+v]", err)
} else {
logger.InitLog.Infof("deregister from NRF successfully")
logger.InitLog.Infoln("deregister from NRF successfully")
}
logger.InitLog.Infof("udr terminated")
logger.InitLog.Infoln("udr terminated")
}

func (udr *UDR) configUpdateDb() {
for msg := range factory.ConfigUpdateDbTrigger {
initLog.Infof("config update DB trigger")
logger.InitLog.Infoln("config update DB trigger")
err := producer.AddEntrySmPolicyTable(
msg.SmPolicyTable.Imsi,
msg.SmPolicyTable.Dnn,
msg.SmPolicyTable.Snssai)
if err == nil {
initLog.Infof("added entry to sm policy table success")
logger.InitLog.Infoln("added entry to sm policy table success")
} else {
initLog.Errorf("entry add failed %+v", err)
logger.InitLog.Errorf("entry add failed %+v", err)
}
}
}
Expand All @@ -300,7 +294,7 @@ func (udr *UDR) StartKeepAliveTimer(nfProfile models.NfProfile) {

func (udr *UDR) StopKeepAliveTimer() {
if KeepAliveTimer != nil {
logger.InitLog.Infof("stopped KeepAlive Timer.")
logger.InitLog.Infoln("stopped KeepAlive Timer")
KeepAliveTimer.Stop()
KeepAliveTimer = nil
}
Expand All @@ -309,7 +303,7 @@ func (udr *UDR) StopKeepAliveTimer() {
func (udr *UDR) BuildAndSendRegisterNFInstance() (prof models.NfProfile, err error) {
self := context.UDR_Self()
profile := consumer.BuildNFInstance(self)
initLog.Infof("udr Profile Registering to NRF: %v", profile)
logger.InitLog.Infof("udr Profile Registering to NRF: %v", profile)
// Indefinite attempt to register until success
profile, _, self.NfId, err = consumer.SendRegisterNFInstance(self.NrfUri, self.NfId, profile)
return profile, err
Expand All @@ -320,7 +314,7 @@ func (udr *UDR) UpdateNF() {
KeepAliveTimerMutex.Lock()
defer KeepAliveTimerMutex.Unlock()
if KeepAliveTimer == nil {
initLog.Warnf("keepAlive timer has been stopped.")
logger.InitLog.Warnln("keepAlive timer has been stopped")
return
}
// setting default value 30 sec
Expand All @@ -334,21 +328,21 @@ func (udr *UDR) UpdateNF() {
patchItem = append(patchItem, pitem)
nfProfile, problemDetails, err := consumer.SendUpdateNFInstance(patchItem)
if problemDetails != nil {
initLog.Errorf("UDR update to NRF ProblemDetails[%v]", problemDetails)
logger.InitLog.Errorf("UDR update to NRF ProblemDetails[%v]", problemDetails)
// 5xx response from NRF, 404 Not Found, 400 Bad Request
if (problemDetails.Status/100) == 5 ||
problemDetails.Status == 404 || problemDetails.Status == 400 {
// register with NRF full profile
nfProfile, err = udr.BuildAndSendRegisterNFInstance()
if err != nil {
initLog.Errorf("UDR register to NRF Error[%s]", err.Error())
logger.InitLog.Errorf("UDR register to NRF Error[%s]", err.Error())
}
}
} else if err != nil {
initLog.Errorf("UDR update to NRF Error[%s]", err.Error())
logger.InitLog.Errorf("UDR update to NRF Error[%s]", err.Error())
nfProfile, err = udr.BuildAndSendRegisterNFInstance()
if err != nil {
initLog.Errorf("UDR register to NRF Error[%s]", err.Error())
logger.InitLog.Errorf("UDR register to NRF Error[%s]", err.Error())
}
}

Expand All @@ -363,7 +357,7 @@ func (udr *UDR) UpdateNF() {

func (udr *UDR) registerNF() {
for msg := range factory.ConfigPodTrigger {
initLog.Infof("minimum configuration from config pod available %v", msg)
logger.InitLog.Infof("minimum configuration from config pod available %v", msg)
self := context.UDR_Self()
profile := consumer.BuildNFInstance(self)
var err error
Expand All @@ -374,7 +368,7 @@ func (udr *UDR) registerNF() {
udr.StartKeepAliveTimer(prof)
logger.CfgLog.Infoln("sent Register NF Instance with updated profile")
} else {
initLog.Errorf("send Register NFInstance Error[%s]", err.Error())
logger.InitLog.Errorf("send Register NFInstance Error[%s]", err.Error())
}
}
}
Loading

0 comments on commit 9e22362

Please sign in to comment.