package main import ( "fmt" elastic "github.com/olivere/elastic/v7" "os" ) func ClientFromConfig(server *ElasticServer) *elastic.Client { opts := []elastic.ClientOptionFunc{ elastic.SetURL(server.URL), elastic.SetSniff(false), elastic.SetGzip(true), } if server.User != "" && server.Pass != "" { opts = append(opts, elastic.SetBasicAuth( server.User, server.Pass, )) } es, err := elastic.NewClient(opts...) if err != nil { fmt.Fprintf(os.Stderr, "Elastic connection error: %s\n", err.Error()) os.Exit(1) } return es }