configuration

package
v1.0.7 Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2021 License: GPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LoggerWrapper

type LoggerWrapper interface {
	// Debug logger
	Debug(message string, metadata ...interface{})
	// Info logger
	Info(message string, metadata ...interface{})
	// Error logger
	Error(message string, metadata ...interface{})
}

LoggerWrapper interface of logger wrapper

func NewLogger

func NewLogger(config ServerConfig) LoggerWrapper

NewLogger creates a new logger instance

type RedisConfig

type RedisConfig struct {
	Addr string `env:"REDIS_ADDR" envDefault:"localhost:6379"`
	Pass string `env:"REDIS_PASS" envDefault:""`
	DB   int    `env:"REDIS_DB" evnDefault:"10"`
}

RedisConfig redis configuration

type SecurityConfig

type SecurityConfig struct {
	JWTSecret                    string `env:"JWT_SECRET_KEY"`
	JWTTokenExpiration           int    `env:"JWT_EXPIRE_HOURS" envDefault:"10"`
	JWTRefreshExpiration         int    `env:"JWT_REFRESH_HOURS" envDefault:"20"`
	JWTInternalSecret            string `env:"JWT_INTERNAL_SECRET_KEY"`
	JWTInternalTokenExpiration   int    `env:"JWT_INTERNAL_EXPIRE_HOURS" envDefault:"2"`
	JWTInternalRefreshExpiration int    `env:"JWT_INTERNAL_REFRESH_HOURS" envDefault:"5"`
}

SecurityConfig security configuration

type ServerConfig

type ServerConfig struct {
	HTTP     string          `env:"HTTP_ADDR" envDefault:":8077"`
	GRPC     string          `env:"GRPC_ADDR" envDefault:":8088"`
	LogLevel syslog.Priority `env:"LOG_LEVEL" envDefault:"7"` // LOG_DEBUG // LOG_ERR = 3
}

ServerConfig server configuration

type ServiceConfig

type ServiceConfig struct {
	Server   ServerConfig
	Security SecurityConfig
	Redis    RedisConfig
}

ServiceConfig service configuration

func Read

func Read() (*ServiceConfig, error)

Read service configuration from environment varible

Jump to

Keyboard shortcuts

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