Skip to content

added support for log level and added logs #11

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 26 additions & 22 deletions .idea/workspace.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

34 changes: 25 additions & 9 deletions internal/logger/logger.go
Original file line number Diff line number Diff line change
@@ -1,24 +1,40 @@
package logger

import (
"fmt"
"github.com/caarlos0/env"
"go.uber.org/zap"
"go.uber.org/zap/zapcore"
"net/http"
)

func NewSugardLogger() *zap.SugaredLogger {
l, err := zap.NewProduction()
type LogConfig struct {
Level int `env:"LOG_LEVEL" envDefault:"0"` // default info
}

func InitLogger() (*zap.SugaredLogger, error) {
cfg := &LogConfig{}
err := env.Parse(cfg)
if err != nil {
panic("failed to create the default logger: " + err.Error())
fmt.Println("failed to parse logger env config: " + err.Error())
return nil, err
}
//l, err := zap.NewDevelopment()
/*l, err := zap.NewProduction()

config := zap.NewProductionConfig()
config.Level = zap.NewAtomicLevelAt(zapcore.Level(cfg.Level))
l, err := config.Build()
if err != nil {
panic("failed to create the default logger: " + err.Error())
fmt.Println("failed to create the default logger: " + err.Error())
return nil, err
}
Logger := l.Sugar()*/
return l.Sugar()
logger := l.Sugar()
return logger, nil
}

func NewSugardLogger() (*zap.SugaredLogger, error) {
return InitLogger()
}

func NewHttpClient() *http.Client {
return http.DefaultClient
}
}
5 changes: 4 additions & 1 deletion pkg/clairService/ClairService.go
Original file line number Diff line number Diff line change
Expand Up @@ -148,14 +148,15 @@ func (impl *ClairServiceImpl) ScanImage(scanEvent *common.ScanEvent) (*common.Sc
}

func (impl *ClairServiceImpl) GetVulnerabilityReportFromClair(scanEvent *common.ScanEvent) (*claircore.VulnerabilityReport, error) {
impl.logger.Infow("received vulnerability report creation request", "scanEvent", scanEvent)
//get manifest from image
manifest, err := impl.CreateClairManifest(scanEvent)
if err != nil {
impl.logger.Errorw("error in creating clair manifest", "err", err, "scanEvent", scanEvent)
return nil, err
}
//end get manifest

impl.logger.Debugw("created clair manifest", "scanEvent", scanEvent, "manifest", manifest)
//checking if index report exists for this manifest hash; if it does, no need of creating index report
exists, err := impl.CheckIfIndexReportExistsForManifestHash(manifest.Hash)
if err != nil {
Expand All @@ -168,6 +169,7 @@ func (impl *ClairServiceImpl) GetVulnerabilityReportFromClair(scanEvent *common.
impl.logger.Errorw("error in creating clair index report", "err", err, "manifest", manifest)
return nil, err
}
impl.logger.Debugw("created index report from manifest", "manifest", manifest)
}
} else if !exists {
//index report do not exist, creating index report for manifest
Expand All @@ -176,6 +178,7 @@ func (impl *ClairServiceImpl) GetVulnerabilityReportFromClair(scanEvent *common.
impl.logger.Errorw("error in creating clair index report", "err", err, "manifest", manifest)
return nil, err
}
impl.logger.Debugw("created index report from manifest", "manifest", manifest)
}

//index report created, now getting vulnerability report
Expand Down
5 changes: 4 additions & 1 deletion wire_gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.