func analyzeFmdConf(config map[string]toml.Primitive, md *toml.MetaData) error { if section, ok := config["ngxfmd"]; ok { err := md.PrimitiveDecode(section, fmConf) if err != nil { fmt.Println(err.Error()) return err } fmt.Printf("(%+v)\n", *fmConf) return nil } else { fmt.Println("analyze nginx files manager configuration failed") return errors.New("does not specify fmd section configuration") } }
func analyzeCmddConf(config map[string]toml.Primitive, md *toml.MetaData) error { if section, ok := config["cmdd"]; ok { err := md.PrimitiveDecode(section, cmddConfig) if err != nil { fmt.Println(err.Error()) return err } fmt.Printf("(%+v)\n", *cmddConfig) return nil } else { fmt.Println("analyze cmddConfig failed") return errors.New("does not specify cmmd section configuration") } }
func main() { var cfg config var md toml.MetaData md, err := toml.DecodeFile(configFile, &cfg) if err != nil { log.Fatal(err) } for _, o := range cfg.Outs { out_plugin := plugin.GetOut(o.Plugin) out_cfg_prim := o.Config var plugin_conf = out_plugin.GetConfig() md.PrimitiveDecode(out_cfg_prim, plugin_conf) } out := plugin.GetOut("outfile") result := out.Write("somestring") fmt.Println(result) }
func InitHandlerConf(confs map[string]toml.Primitive, md *toml.MetaData) error { var err error for k, handler := range CmdHandlers { if conf, ok := confs[k]; ok { handlerConf := handler.ConfigStruct() err = md.PrimitiveDecode(conf, handlerConf) if err != nil { cmdlog.EPrintln(err.Error()) return err } err = handler.Init(handlerConf) if err != nil { cmdlog.EPrintln(err.Error()) return err } } } return err }