config

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 4, 2020 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AppConfig

type AppConfig struct {
	TokenKey string `envconfig:"TOKEN_KEY" required:"true"`
	LogLevel string `envconfig:"LOG_LEVEL" default:"trace"`
}

type Redis

type Redis struct {
	Host        string        `envconfig:"REDIS_HOST" default:"localhost"`
	Port        string        `envconfig:"REDIS_PORT" default:"6379"`
	Password    string        `envconfig:"REDIS_PASSWORD"`
	MaxIdle     int           `envconfig:"REDIS_MAX_IDLE" default:"3"`
	IdleTimeout time.Duration `envconfig:"REDIS_IDLE_TIMEOUT" default:"240s"`
}

type Server

type Server struct {
	GatewayPort             string        `envconfig:"GATEWAY_PORT" default:"8081"`
	GRPCHost                string        `envconfig:"GRPC_HOST" default:"0.0.0.0"`
	GRPCPort                string        `envconfig:"GRPC_PORT" default:"10000"`
	GracefulShutdownTimeout time.Duration `envconfig:"GRACEFUL_SHUTDOWN_TIMEOUT" default:"15s"`
	WriteTimeout            time.Duration `envconfig:"WRITE_TIMEOUT" default:"5s"`
	ReadTimeout             time.Duration `envconfig:"READ_TIMEOUT" default:"5s"`
	IdleTimeout             time.Duration `envconfig:"IDLE_TIMEOUT" default:"300s"`
}

type ServiceConfiguration

type ServiceConfiguration struct {
	AppConfig *AppConfig
	Redis     *Redis
	Server    *Server
}

func Load

func Load() (*ServiceConfiguration, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL