config

package
v0.0.0-...-5105834 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2022 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Dev 开发模式下的环境变量
	Dev = "dev"
	// Test 测试环境下的环境变量
	Test = "test"
	// Production 生产环境下的环境变量
	Production = "production"
)

Variables

This section is empty.

Functions

func GetENV

func GetENV() string

GetENV 获取当前运行环境

Types

type BasicConfig

type BasicConfig struct {
	// 监听地址
	Listen string `validate:"required,ascii" default:":7001"`
	// 最大处理请求数
	RequestLimit uint `validate:"required" default:"1000"`
	// 应用名称
	Name string `validate:"required,ascii"`
	// PID文件
	PidFile string `validate:"required"`
	// 应用前缀
	Prefixes []string `validate:"omitempty,dive,xPath"`
	// 超时(用于设置所有请求)
	Timeout time.Duration `default:"2m"`
}

BasicConfig 应用基本配置信息

func MustGetBasicConfig

func MustGetBasicConfig() *BasicConfig

MustGetBasicConfig 获取基本配置信息

type DatabaseConfig

type DatabaseConfig struct {
	// 连接串
	URI string `validate:"required"`
	// 最大连接数
	MaxOpenConns int `default:"100"`
	// 最大空闲连接数
	MaxIdleConns int `default:"10"`
	// 最大空闲时长
	MaxIdleTime time.Duration `default:"5m"`
}

DatabaseConfig 数据库配置

func MustGetDatabaseConfig

func MustGetDatabaseConfig() *DatabaseConfig

MustGetPostgresConfig 获取postgres配置

type InfluxdbConfig

type InfluxdbConfig struct {
	// 存储的bucket
	Bucket string `validate:"required,min=1,max=50"`
	// 配置的组织名称
	Org string `validate:"required,min=1,max=100"`
	// 连接地址
	URI string `validate:"required,url"`
	// 认证的token
	Token string `validate:"required,ascii"`
	// 批量提交大小
	BatchSize uint `default:"100" validate:"required,min=1,max=5000"`
	// 间隔提交时长
	FlushInterval time.Duration `default:"30s" validate:"required"`
	// 最大正在写入量
	MaxWritingPoints int `default:"20" validate:"required"`
	// 是否启用gzip
	Gzip bool
	// 是否禁用
	Disabled bool
}

Influxdb influxdb配置

func MustGetInfluxdbConfig

func MustGetInfluxdbConfig() *InfluxdbConfig

MustGetInfluxdbConfig 获取influxdb配置

type LocationConfig

type LocationConfig struct {
	Timeout time.Duration `validate:"required"`
	BaseURL string        `validate:"required,url"`
}

LocationConfig 定位配置

func MustGetLocationConfig

func MustGetLocationConfig() *LocationConfig

MustGetLocationConfig 获取定位的配置

type MailConfig

type MailConfig struct {
	Host     string `validate:"required,hostname"`
	Port     int    `validate:"required,number"`
	User     string `validate:"required,email"`
	Password string `validate:"required,min=1,max=100"`
}

MailConfig email的配置

func MustGetMailConfig

func MustGetMailConfig() *MailConfig

MustGetMailConfig 获取邮件配置

type MinioConfig

type MinioConfig struct {
	Endpoint        string `validate:"required,hostname_port"`
	AccessKeyID     string `validate:"required,min=3"`
	SecretAccessKey string `validate:"required,min=6"`
	SSL             bool
}

MinioConfig minio的配置信息

func MustGetMinioConfig

func MustGetMinioConfig() *MinioConfig

MustGetMinioConfig 获取minio的配置

type PyroscopeConfig

type PyroscopeConfig struct {
	Addr  string `validate:"omitempty,url"`
	Token string
}

PyroscopeConfig pyroscope的配置信息

func MustGetPyroscopeConfig

func MustGetPyroscopeConfig() *PyroscopeConfig

MustGetPyroscopeConfig 获取pyroscope的配置信息

type RedisConfig

type RedisConfig struct {
	// 连接地址
	Addrs []string `validate:"required,dive,hostname_port"`
	// 用户名
	Username string
	// 密码
	Password string
	// 慢请求时长
	Slow time.Duration `validate:"required"`
	// 最大的正在处理请求量
	MaxProcessing uint32 `validate:"required" default:"100"`
	// 连接池大小
	PoolSize int `default:"100"`
	// key前缀
	Prefix string
	// sentinel模式下使用的master name
	Master string
}

RedisConfig redis配置

func MustGetRedisConfig

func MustGetRedisConfig() *RedisConfig

MustGetRedisConfig 获取redis的配置

type SessionConfig

type SessionConfig struct {
	// cookie的保存路径
	CookiePath string `validate:"required,ascii"`
	// cookie的key
	Key string `validate:"required,ascii"`
	// cookie的有效期(允许为空)
	MaxAge time.Duration
	// session的有效期
	TTL time.Duration `validate:"required"`
	// 用于加密cookie的key
	Keys []string `validate:"required"`
	// 用于跟踪用户的cookie
	TrackKey string `validate:"required,ascii"`
}

SessionConfig session相关配置信息

func MustGetSessionConfig

func MustGetSessionConfig() *SessionConfig

MustGetSessionConfig 获取session的配置

type TinyConfig

type TinyConfig struct {
	Addr string `validate:"required,hostname_port"`
}

func MustGetTinyConfig

func MustGetTinyConfig() *TinyConfig

Jump to

Keyboard shortcuts

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