diff --git a/web/pkg/command/root.go b/web/pkg/command/root.go index 863ee56d4..74348e62d 100644 --- a/web/pkg/command/root.go +++ b/web/pkg/command/root.go @@ -55,6 +55,7 @@ func NewLogger(cfg *config.Config) log.Logger { log.Level(cfg.Log.Level), log.Pretty(cfg.Log.Pretty), log.Color(cfg.Log.Color), + log.File(cfg.Log.File), ) } @@ -113,6 +114,7 @@ func NewSutureService(cfg *ociscfg.Config) suture.Service { if cfg.Mode == 0 { cfg.Web.Supervised = true } + cfg.Web.Log.File = cfg.Log.File return SutureService{ cfg: cfg.Web, } diff --git a/web/pkg/config/config.go b/web/pkg/config/config.go index 179a8b8ed..4ea408ec2 100644 --- a/web/pkg/config/config.go +++ b/web/pkg/config/config.go @@ -7,6 +7,7 @@ type Log struct { Level string Pretty bool Color bool + File string } // Debug defines the available debug configuration. diff --git a/web/pkg/flagset/flagset.go b/web/pkg/flagset/flagset.go index 982377bf5..717663f98 100644 --- a/web/pkg/flagset/flagset.go +++ b/web/pkg/flagset/flagset.go @@ -46,6 +46,12 @@ func HealthWithConfig(cfg *config.Config) []cli.Flag { // ServerWithConfig applies cfg to the root flagset func ServerWithConfig(cfg *config.Config) []cli.Flag { return []cli.Flag{ + &cli.StringFlag{ + Name: "log-file", + Usage: "Enable log to file", + EnvVars: []string{"WEB_LOG_FILE", "OCIS_LOG_FILE"}, + Destination: &cfg.Log.File, + }, &cli.StringFlag{ Name: "config-file", Value: "",