Documentation
¶
Index ¶
Constants ¶
View Source
const ( FileType cfgType = 0 CodeType cfgType = 1 )
Variables ¶
View Source
var ( GinCfgDebug = &conf.GinConf{ Addr: ":8080", Mode: "debug", NoRoute: true, NoMethod: true, } GinCfgRelease = &conf.GinConf{ Addr: ":8080", Mode: "release", NoRoute: true, NoMethod: true, } // 本地开发使用 SparrowCfgLocal = &conf.SparrowConf{ Gin: GinCfgDebug, Log: log.LocalBusinessLogCfg(), } // 开发环境 SparrowCfgDev = &conf.SparrowConf{ Gin: GinCfgRelease, Access: access.DevAccessLogCfg(), Log: log.DevBusinessLogCfg(), } // 测试环境 SparrowCfgBeta = &conf.SparrowConf{ Gin: GinCfgRelease, Access: access.DevAccessLogCfg(), Log: log.BetaBusinessLogCfg(), } // uat/pre环境 SparrowCfgUat = &conf.SparrowConf{ Gin: GinCfgRelease, Access: access.ProdAccessLogCfg(), Log: log.UatBusinessLogCfg(), } // 发布线上使用 SparrowCfgProd = &conf.SparrowConf{ Gin: GinCfgRelease, Access: access.ProdAccessLogCfg(), Log: log.ProdBusinessLogCfg(), } )
View Source
var ( Sparrow = NewApp() // 框架实例方便调用方 快捷使用 Engine = Sparrow.newEngine() // gin引擎实例方便调用方 快捷使用 FileCfg = &CallSparrowCfg{ CmdCfg: true, CfgType: FileType, } // 本地开发 提供默认使用 Code 的方式配置框架 CodeCfgLocal = &CallSparrowCfg{ CmdCfg: false, CfgType: CodeType, SparrowCfg: SparrowCfgLocal, } // 开发环境 提供默认使用 Code 的方式配置框架 CodeCfgDev = &CallSparrowCfg{ CmdCfg: false, CfgType: CodeType, SparrowCfg: SparrowCfgDev, } // uat/pre环境 CodeCfgBeta = &CallSparrowCfg{ CmdCfg: false, CfgType: CodeType, SparrowCfg: SparrowCfgBeta, } // 测试环境 CodeCfgUat = &CallSparrowCfg{ CmdCfg: false, CfgType: CodeType, SparrowCfg: SparrowCfgUat, } // 线上环境提供默认使用 Code 的方式配置框架 CodeCfgProd = &CallSparrowCfg{ CmdCfg: false, CfgType: CodeType, SparrowCfg: SparrowCfgProd, } )
Functions ¶
func OnConfigChange ¶
OnConfigChange 项目/调用方 配置文件发生变更后的回调函数
func UseDefaultMiddleware ¶
func UseDefaultMiddleware(stack bool)
UseDefaultMiddleware 使用默认的中间件, stack参数用了指定是否在 recovery 时 是否单独记录 debug.Stack()
Types ¶
type App ¶
type App struct { Engine *gin.Engine EtcConf *conf.ViperConf // 框架配置 ConfigConf *conf.ViperConf // 项目/业务方 使用配置 // contains filtered or unexported fields }
App sparrow结构体
func (*App) ConfigApp ¶
func (a *App) ConfigApp(callCfg *CallSparrowCfg) (err error)
ConfigApp 配置框架需要的一些参数
type CallSparrowCfg ¶
type CallSparrowCfg struct { Use string Short string Long string Version string CallerRun func(*cobra.Command, []string) error CmdCfg bool // 控制 项目本身配置是否由cmd指定的 -c 参数指定 // 如果 CmdCfg 为 true 下面的这 3 个值才有意义 CallRawVal interface{} // 调用方 配置结构体 实例, 一定要是指针类型 CallOnConfigChange func(e fsnotify.Event) CallDecoderConfigOption []viper.DecoderConfigOption CfgType cfgType // 框架读取框架配置的方式: file, code SparrowCfg *conf.SparrowConf }
CallSparrowCfg 调用框架时需要的配置
Click to show internal directories.
Click to hide internal directories.