Documentation ¶
Index ¶
- Constants
- func Env(key string, value ...interface{}) interface{}
- func EnvBool(key string, value ...interface{}) bool
- func EnvDuration(key string, value ...interface{}) time.Duration
- func EnvInt(key string, value ...interface{}) int
- func EnvString(key string, value ...interface{}) string
- func EnvStringSlice(key string, value ...interface{}) []string
- type CacheConfig
- type ConfigEntity
- func (c *ConfigEntity) Get(key string, defaultValue ...interface{}) interface{}
- func (c *ConfigEntity) GetBool(key string, defaultValue ...bool) bool
- func (c *ConfigEntity) GetConfig() *viper.Viper
- func (c *ConfigEntity) GetDuration(key string, defaultValue ...time.Duration) time.Duration
- func (c *ConfigEntity) GetFloat64(key string, defaultValue ...float64) float64
- func (c *ConfigEntity) GetInt(key string, defaultValue ...int) int
- func (c *ConfigEntity) GetIntSlice(key string, defaultValue ...[]int) []int
- func (c *ConfigEntity) GetString(key string, defaultValue ...string) string
- func (c *ConfigEntity) GetStringMap(key string, defaultValue ...map[string]interface{}) map[string]interface{}
- func (c *ConfigEntity) GetStringMapString(key string, defaultValue ...map[string]string) map[string]string
- func (c *ConfigEntity) GetStringSlice(key string, defaultValue ...[]string) []string
- func (c *ConfigEntity) GetTime(key string, defaultValue ...time.Time) time.Time
- type GormDbConfig
- type LogConfig
- type LogRotate
- type MqttConfig
- type QueueConfig
- type RedisConfig
- type RedisDataCacheConfig
- type ServerConfig
- type TokenConfig
- type WebSocketConfig
Constants ¶
View Source
const ( ServerName = "server.name" ServerHost = "server.host" ServerAddress = "server.address" ServerHTTPSAddress = "server.httpsAddress" ServerHTTPSCertPath = "server.httpsCertPath" ServerHTTPSKeyPath = "server.httpsKeyPath" ServerReadTimeout = "server.readTimeout" ServerWriteTimeout = "server.writeTimeout" ServerIdleTimeout = "server.idleTimeout" ServerMaxHeaderBytes = "server.maxHeaderBytes" ServerKeepAlive = "server.keepAlive" ServerServerAgent = "server.serverAgent" ServerIndexFiles = "server.indexFiles" ServerIndexFolder = "server.indexFolder" ServerServerRoot = "server.serverRoot" ServerSearchPaths = "server.searchPaths" ServerFileServerEnabled = "server.fileServerEnabled" ServerPProfEnabled = "server.pprofEnabled" ServerPProfPattern = "server.pprofPattern" ServerStatsVizEnabled = "server.statsVizEnabled" ServerStatsVizPort = "server.statsVizPort" ServerCookieMaxAge = "server.cookie.maxAge" ServerCookiePath = "server.cookie.path" ServerCookieDomain = "server.cookie.domain" ServerSessionIdName = "server.session.idName" ServerSessionMaxAge = "server.session.maxAge" ServerSessionCookieMaxAge = "server.session.cookieMaxAge" ServerSessionCookieOutput = "server.session.cookieOutput" )
web服务配置
View Source
const ( TokenKey = "token.key" TokenExp = "token.exp" )
token配置
View Source
const ( RedisMode = "redis.mode" RedisSentinelMasterName = "redis.sentinelMasterName" RedisAddr = "redis.addr" RedisUsername = "redis.username" RedisPassword = "redis.password" RedisDb = "redis.db" RedisMaxActive = "redis.maxActive" RedisMaxIdle = "redis.maxIdle" RedisIdleTimeout = "redis.idleTimeout" RedisPrefix = "redis.prefix" RedisDataCachePoolSize = "dataCache.poolSize" RedisDataCacheRecordDuration = "dataCache.recordDuration" RedisDataCacheRecordLimit = "dataCache.recordLimit" RedisDataCachePipelineBufferSize = "dataCache.pipelineBufferSize" )
redis配置
View Source
const ( DatabaseDriver = "database.driver" DatabaseHost = "database.host" DatabasePort = "database.port" DatabaseUserName = "database.username" DatabasePassword = "database.password" DatabaseDbName = "database.dbName" DatabaseConfig = "database.config" DatabaseMaxIdleConns = "database.maxIdleConns" DatabaseMaxOpenConns = "database.maxOpenConns" DatabaseShowSQL = "database.showSql" )
数据库配置
View Source
const ( LogLevel = "log.level" LogPattern = "log.pattern" LogOutput = "log.output" LogRotateFile = "log.rotate.file" LogRotateMaxSize = "log.rotate.maxSize" LogRotateMaxBackups = "log.rotate.maxBackups" LogRotateMaxAge = "log.rotate.maxAge" LogRotateCompress = "log.rotate.compress" )
日志配置
View Source
const ( QueueInterval = "queue.interval" QueuePrefix = "queue.prefix" QueueListen = "queue.listen" QueueConcurrency = "queue.concurrency" )
消息队列配置
View Source
const ( MqttHost = "mqtt.host" MattUsername = "mqtt.username" MqttPassword = "mqtt.password" MqttClientID = "mqtt.client_id" MqttParallel = "mqtt.parallel" MqttSubscribeQos = "mqtt.subscribe_qos" MqttPublishQos = "mqtt.publish_qos" )
mqtt配置
View Source
const (
CacheRedisMemoryCacheSize = "redis.memoryCacheSize"
)
缓存配置
Variables ¶
This section is empty.
Functions ¶
func EnvDuration ¶ added in v0.0.7
func EnvStringSlice ¶
Types ¶
type CacheConfig ¶
type CacheConfig struct { MemoryCacheSize int // 内存缓存大小(字节) RedisConfig }
CacheConfig 结构体用于存储缓存系统的配置
func LoadCacheConfig ¶
func LoadCacheConfig() *CacheConfig
type ConfigEntity ¶
type ConfigEntity struct {
// contains filtered or unexported fields
}
ConfigEntity 表示需要全局调用的实体对象
func (*ConfigEntity) Get ¶
func (c *ConfigEntity) Get(key string, defaultValue ...interface{}) interface{}
Get 获取interface{}类型配置
func (*ConfigEntity) GetBool ¶
func (c *ConfigEntity) GetBool(key string, defaultValue ...bool) bool
GetBool 获取bool类型配置
func (*ConfigEntity) GetConfig ¶
func (c *ConfigEntity) GetConfig() *viper.Viper
func (*ConfigEntity) GetDuration ¶
GetDuration 获取time.Duration类型配置
func (*ConfigEntity) GetFloat64 ¶
func (c *ConfigEntity) GetFloat64(key string, defaultValue ...float64) float64
GetFloat64 获取float64类型配置
func (*ConfigEntity) GetInt ¶
func (c *ConfigEntity) GetInt(key string, defaultValue ...int) int
GetInt 获取int类型配置
func (*ConfigEntity) GetIntSlice ¶
func (c *ConfigEntity) GetIntSlice(key string, defaultValue ...[]int) []int
GetIntSlice 获取[]int类型配置
func (*ConfigEntity) GetString ¶
func (c *ConfigEntity) GetString(key string, defaultValue ...string) string
GetString 获取string类型配置
func (*ConfigEntity) GetStringMap ¶
func (c *ConfigEntity) GetStringMap(key string, defaultValue ...map[string]interface{}) map[string]interface{}
GetStringMap 获取map[string]interface{}类型配置
func (*ConfigEntity) GetStringMapString ¶
func (c *ConfigEntity) GetStringMapString(key string, defaultValue ...map[string]string) map[string]string
GetStringMapString 获取map[string]string类型配置
func (*ConfigEntity) GetStringSlice ¶
func (c *ConfigEntity) GetStringSlice(key string, defaultValue ...[]string) []string
GetStringSlice 获取[]string类型配置
type GormDbConfig ¶ added in v0.0.7
type GormDbConfig struct { Driver string Host string Port string Username string Password string Dbname string Config string Prefix string Singular bool Engine string MaxIdleConns int MaxOpenConns int LogMode string LogZap bool Dsn string ShowSQL bool }
func LoadDatabaseConfig ¶
func LoadDatabaseConfig() *GormDbConfig
type LogConfig ¶
type LogConfig struct { Level string `mapstructure:"level" json:"level" yaml:"level"` Pattern string `mapstructure:"pattern" json:"pattern" yaml:"pattern"` Output string `mapstructure:"output" json:"output" yaml:"output"` LogRotate LogRotate `mapstructure:"logRotate" json:"logRotate" yaml:"logRotate"` }
func LoadLogConfig ¶
func LoadLogConfig() LogConfig
type LogRotate ¶
type LogRotate struct { Filename string `mapstructure:"filename" json:"filename" yaml:"filename"` MaxSize int `mapstructure:"maxSize" json:"maxSize" yaml:"maxSize"` MaxBackups int `mapstructure:"maxBackups" json:"maxBackups" yaml:"maxBackups"` MaxAge int `mapstructure:"maxAge" json:"maxAge" yaml:"maxAge"` Compress bool `mapstructure:"compress" json:"compress" yaml:"compress"` }
type MqttConfig ¶
type MqttConfig struct { Host string `json:"host"` UserName string `json:"user_name"` PassWord string `json:"pass_word"` ClientID string `json:"client_id"` Parallel bool `json:"parallel"` SubscribeQos uint8 `json:"subscribe_qos"` PublishQos uint8 `json:"publish_qos"` }
func LoadMqttConfig ¶
func LoadMqttConfig() *MqttConfig
type QueueConfig ¶
func LoadQueueConfig ¶
func LoadQueueConfig() *QueueConfig
type RedisConfig ¶
type RedisConfig struct { Mode string SentinelMasterName string Addr string Username string Password string Db int MaxActive int MaxIdle int IdleTimeout time.Duration RedisPrefix string DataCacheConfig RedisDataCacheConfig }
func LoadRedisConfig ¶
func LoadRedisConfig() *RedisConfig
type RedisDataCacheConfig ¶ added in v0.0.7
type ServerConfig ¶ added in v0.0.7
type ServerConfig struct { Name string Address string Host string HTTPSAddress string HTTPSCertPath string HTTPSKeyPath string TLSConfig *tls.Config `json:"tlsConfig"` // ReadTimeout 是读取整个请求(包括请求体)的最大持续时间。 // // 由于 ReadTimeout 不允许处理程序对每个请求体的可接受截止时间或 // 上传速率做出决定,大多数用户会更喜欢使用 ReadHeaderTimeout。 // 同时使用两者是有效的。 ReadTimeout time.Duration // WriteTimeout 是在超时之前写入响应的最大持续时间。 // 每当读取新请求的头部时,它都会被重置。 // 与 ReadTimeout 一样,它不允许处理程序在每个请求的基础上做出决定。 WriteTimeout time.Duration // IdleTimeout 是在启用保持活动连接时等待下一个请求的最大时间。 // 如果 IdleTimeout 为零,则使用 ReadTimeout 的值。 // 如果两者都为零,则没有超时。 IdleTimeout time.Duration // MaxHeaderBytes 控制服务器在解析请求头的键和值(包括请求行)时 // 将读取的最大字节数。它不限制请求体的大小。 // // 它可以在配置文件中使用如下字符串进行配置: 1m, 10m, 500kb 等。 // 默认为 10240 字节。 MaxHeaderBytes int // KeepAlive 启用 HTTP keep-alive。 KeepAlive bool // ServerAgent 指定服务器代理信息,将写入 HTTP 响应头的 "Server" 字段。 ServerAgent string // Rewrites 指定 URI 重写规则映射。 Rewrites map[string]string // IndexFiles 指定静态文件夹的索引文件。 IndexFiles []string // IndexFolder 指定在请求文件夹时是否列出子文件。 // 如果为 false,服务器响应 HTTP 状态码 403。 IndexFolder bool // ServerRoot 指定静态服务的根目录。 ServerRoot string // SearchPaths 指定静态服务的额外搜索目录。 SearchPaths []string // StaticPaths 指定 URI 到目录映射数组。 StaticPaths []staticPathItem // FileServerEnabled 是静态服务的全局开关。 // 如果设置了任何静态路径,它会自动启用。 FileServerEnabled bool // CookieMaxAge 指定 cookie 项的最大 TTL。 CookieMaxAge time.Duration // CookiePath 指定 cookie 路径。 // 它也会影响会话 ID 的默认存储。 CookiePath string // CookieDomain 指定 cookie 域。 // 它也会影响会话 ID 的默认存储。 CookieDomain string // CookieSameSite 指定 cookie 的 SameSite 属性。 // 它也会影响会话 ID 的默认存储。 CookieSameSite string // CookieSecure 指定 cookie 的 Secure 属性。 // 它也会影响会话 ID 的默认存储。 CookieSecure bool // CookieHttpOnly 指定 cookie 的 HttpOnly 属性。 // 它也会影响会话 ID 的默认存储。 CookieHttpOnly bool // SessionIdName 指定会话 ID 的名称。 SessionIdName string // SessionMaxAge 指定会话项的最大 TTL。 SessionMaxAge time.Duration // SessionPath 指定用于存储会话文件的会话存储目录路径。 // 它仅在会话存储类型为文件存储时有意义。 SessionPath string // SessionCookieMaxAge 指定会话 ID 的 cookie TTL。 // 如果设置为 0,则表示它随浏览器会话一起过期。 SessionCookieMaxAge time.Duration // SessionCookieOutput 指定是否自动将会话 ID 输出到 cookie。 SessionCookieOutput bool PProfEnabled bool // PProfEnabled 启用 PProf 功能。 PProfPattern string // PProfPattern 指定路由器的 PProf 服务模式。 StatsVizEnabled bool // StatsVizEnabled 启用 StatsViz 功能。 StatsVizPort string // StatsVizPort 指定 StatsViz 服务端口。 OpenApiPath string `json:"openapiPath"` // OpenApiPath specifies the OpenApi specification file path. SwaggerPath string `json:"swaggerPath"` // SwaggerPath specifies the swagger UI path for route registering. SwaggerUITemplate string `json:"swaggerUITemplate"` // SwaggerUITemplate specifies the swagger UI custom template RouteOverWrite bool `json:"routeOverWrite"` }
func LoadServerConfig ¶ added in v0.0.7
func LoadServerConfig() *ServerConfig
type TokenConfig ¶
func LoadTokenConfig ¶
func LoadTokenConfig() *TokenConfig
type WebSocketConfig ¶
type WebSocketConfig struct { WebSocketHost string `json:"webSocketHost"` WebSocketPort string `json:"webSocketPort"` Path string }
func LoadWebSocketConfig ¶
func LoadWebSocketConfig() *WebSocketConfig
Click to show internal directories.
Click to hide internal directories.