github.com/vseinstrumentiru/lego@v1.0.2/internal/lego/monitor/telemetry/config.go (about) 1 package telemetry 2 3 import ( 4 "emperror.dev/errors" 5 "github.com/spf13/pflag" 6 "github.com/spf13/viper" 7 8 "go.opencensus.io/stats/view" 9 ) 10 11 type Config struct { 12 // Telemetry HTTP server address 13 Addr string 14 15 Stats []*view.View 16 } 17 18 func (c Config) SetDefaults(env *viper.Viper, flag *pflag.FlagSet) { 19 flag.String("telemetry-addr", ":10000", "Telemetry HTTP server address") 20 _ = env.BindPFlag("srv.monitor.telemetry.addr", flag.Lookup("telemetry-addr")) 21 env.SetDefault("srv.monitor.telemetry.addr", ":10000") 22 } 23 24 func (c Config) Validate() (err error) { 25 if c.Addr == "" { 26 err = errors.Append(err, errors.New("srv.monitor.telemetry.addr is required")) 27 } 28 29 return err 30 }