package main import ( "fmt" "github.com/asim/go-micro/v3/config" "github.com/asim/go-micro/v3/config/source/file" ) func main() { // load the config from a file source if err := config.Load(file.NewSource( file.WithPath("./config.json"), )); err != nil { fmt.Println(err) return } // define our own host type type Host struct { Address string `json:"address"` Port int `json:"port"` } var host Host // read a database host if err := config.Get("hosts", "database").Scan(&host); err != nil { fmt.Println(err) return } fmt.Println(host.Address, host.Port) }