// Copyright 2012-present Oliver Eilhard. All rights reserved. // Use of this source code is governed by a MIT-license. // See http://olivere.mit-license.org/license.txt for details. /* Package elastic provides an interface to the Elasticsearch server (https://www.elastic.co/products/elasticsearch). The first thing you do is to create a Client. If you have Elasticsearch installed and running with its default settings (i.e. available at http://127.0.0.1:9200), all you need to do is: client, err := elastic.NewClient() if err != nil { // Handle error } If your Elasticsearch server is running on a different IP and/or port, just provide a URL to NewClient: // Create a client and connect to http://192.168.2.10:9201 client, err := elastic.NewClient(elastic.SetURL("http://192.168.2.10:9201")) if err != nil { // Handle error } You can pass many more configuration parameters to NewClient. Review the documentation of NewClient for more information. If no Elasticsearch server is available, services will fail when creating a new request and will return ErrNoClient. A Client provides services. The services usually come with a variety of methods to prepare the query and a Do function to execute it against the Elasticsearch REST interface and return a response. Here is an example of the IndexExists service that checks if a given index already exists. exists, err := client.IndexExists("twitter").Do(context.Background()) if err != nil { // Handle error } if !exists { // Index does not exist yet. } Look up the documentation for Client to get an idea of the services provided and what kinds of responses you get when executing the Do function of a service. Also see the wiki on Github for more details. */ package elastic