package config type Config struct { Log Log `mapstructure:"log" json:"log" yaml:"log"` Serve Serve `mapstructure:"serve" json:"serve" yaml:"serve"` Mysql Mysql `mapstructure:"mysql" json:"mysql" yaml:"mysql"` Redis Redis `mapstructure:"redis" json:"redis" yaml:"redis"` } // Serve gin服务配置 type Serve struct { Port int `mapstructure:"port" json:"port" yaml:"port" description:"gin开启监听http服务的端口"` RunMode string `mapstructure:"run-mode" json:"run-mode" yaml:"run-mode" description:"gin运行模式的默认,枚举值:debug,release"` UseRedis bool `mapstructure:"use-redis" json:"use-redis" yaml:"use-redis" description:"是否使用redis"` AppName string `mapstructure:"app-name" json:"app-name" yaml:"app-name" description:"项目名称"` StaticDir string `mapstructure:"static-dir" json:"static-dir" yaml:"static-dir" description:"上传的文件存储目录地址"` } // Log 日志配置 type Log struct { Prefix string `mapstructure:"prefix" json:"prefix" yaml:"prefix" description:"日志输出前缀"` LogFile bool `mapstructure:"log-file" json:"logFile" yaml:"log-file" description:""` Stdout string `mapstructure:"stdout" json:"stdout" yaml:"stdout" description:""` FileStdout string `mapstructure:"file-stdout" json:"file-stdout" yaml:"file-stdout" description:""` SaveMaxDay int `mapstructure:"save-max-day" json:"save-max-day" yaml:"save-max-day" description:"最多保留多少天的日志"` CuttingDay int `mapstructure:"cutting-day" json:"cutting-day" yaml:"cutting-day" description:"相隔几天切割文件"` LogDirPath string `mapstructure:"log-dir-path" json:"log-dir-path" yaml:"log-dir-path" description:"日志目录"` LogSoftLink string `mapstructure:"log-soft-link" json:"log-soft-link" yaml:"log-soft-link" description:"日志软链接"` BinlogDirPath string `mapstructure:"binlog-dir-path" json:"binlog-dir-path" yaml:"binlog-dir-path" description:"binlog日志目录"` BinlogSoftLink string `mapstructure:"binlog-soft-link" json:"binlog-soft-link" yaml:"binlog-soft-link" description:"binlog日志软链接"` } // Mysql 数据库配置 type Mysql struct { //LogMode bool `mapstructure:"log-mode" json:"log-mode" yaml:"log-mode" description:"是否开启日志"` Stdout bool `mapstructure:"stdout" json:"stdout" yaml:"stdout" description:"日志是否输出在控制台"` DefaultDsnAliasName string `mapstructure:"default-dsn-alias-name" json:"default-dsn-alias-name" yaml:"default-dsn-alias-name" description:"默认的数据库连接别名"` List []MysqlConn `mapstructure:"list" json:"list" yaml:"list" description:"数据库链接配置列表"` } // MysqlConn mysql数据链接配置 type MysqlConn struct { Dsn string `mapstructure:"dsn" json:"dsc" yaml:"dsn" description:"数据库连接配置"` AliasName string `mapstructure:"alias-name" json:"alias-name" yaml:"alias-name" description:"数据库别名"` MaxIdleConns int `mapstructure:"max-idle-conns" json:"max-idle-conns" yaml:"max-idle-conns" description:"最大空闲连接"` MaxOpenConns int `mapstructure:"max-open-conns" json:"max-open-conns" yaml:"max-open-conns" description:"最大连接数"` } // Redis redis配置 type Redis struct { Address string `mapstructure:"address" json:"address" yaml:"address" description:"redis服务链接地址"` Password string `mapstructure:"password" json:"password" yaml:"password" description:"redis服务密码"` Db int `mapstructure:"db" json:"db" yaml:"db" description:"默认使用的redis库"` }