Browse Source

Add default operator as parameter to index search

master
Christopher Ramey 2 years ago
parent
commit
d025229e0a
  1. 9
      index.go

9
index.go

@ -51,8 +51,15 @@ func handleIndexCommand() {
cfgpath := cmd.String("config", "", "path to configuration")
server := cmd.String("server", "", "server name to use")
fields := cmd.String("fields", "*", "fields to include in search")
defop := cmd.String("defop", "AND", "default search operator")
cmd.Parse(os.Args[3:])
if *defop != "AND" && *defop != "OR" {
fmt.Fprintf(os.Stderr, "default operator must be AND or OR\n")
cmd.Usage()
os.Exit(1)
}
if len(cmd.Args()) < 2 {
fmt.Fprintf(os.Stderr, "index name and query required for index search\n")
cmd.Usage()
@ -63,7 +70,7 @@ func handleIndexCommand() {
es := cfg.GetClient(*server)
res, err := es.Search().Index(cmd.Arg(0)).StoredField(*fields).Query(
elastic.NewQueryStringQuery(cmd.Arg(1)),
elastic.NewQueryStringQuery(cmd.Arg(1)).DefaultOperator(*defop),
).Do(context.Background())
if err != nil {
fmt.Fprintf(os.Stderr, "elastic error: %s\n", err.Error())

Loading…
Cancel
Save