需要实现程序,根据运行环境加载对应配置文件,配置文件以命名进行区分(config_xxx.yaml)。只记录更改配置文件方法,不涉及自动切换配置文件。
goframe 配置管理模块 gcfg 设置有默认目录、默认文件(名),自动检索加载默认目录下默认文件。因此,分为两项修改操作,根据自身需求,选择其中之一或者进行组合。
下面在官网配置管理说明文档基础上,添加个人理解和实际代码示例。
修改默认文件(名)
gcfg 默认文件(名):config
,文件后缀toml/yaml/yml/json/ini/xml/properties
修改默认文件名称:
- 通过配置管理方法
SetFileName
修改。 - 修改命令行启动参数 -
gf.gcfg.file
。 - 修改指定的环境变量 -
GF_GCFG_FILE
。
假如我们的执行程序文件为main
,那么可以通过以下方式修改配置管理器的配置文件目录(Linux
下):
-
通过单例模式
g.Cfg().GetAdapter().(*gcfg.AdapterFile).SetFileName("default.yaml") // or g.Cfg().GetAdapter().(*gcf