Как я могу получить все имена индексов из Elasticsearch с помощью клиентской библиотеки golang?

Я использую эту библиотеку в go https://pkg.go.dev/github.com/elastic/go-elasticsearch/esapi#CatIndicesRequest для запросов от Elasticsearch.

У меня есть несколько примеров запросов, но я ищу метод API для получения всего индекса из кластера Elasticsearch. Но я не могу найти тот, который я мог бы использовать из их документа. Кто-нибудь знает, как лучше всего получить весь индекс? как http API _cat/indices

Непонятно, что /_cat/indices не предоставляет того, что вам нужно.

Val 23.03.2022 08:32

Я имею в виду, как получить его через библиотеку go lang

Joey Yi Zhao 23.03.2022 08:34
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
API ввода вопросов - это полезный инструмент для интеграции моделей машинного обучения, таких как ChatGPT, в приложения, требующие обработки...
0
2
64
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вот рабочий пример:

package main

import (
    "context"
    "fmt"

    "github.com/elastic/go-elasticsearch/v7"
    "github.com/elastic/go-elasticsearch/v7/esapi"
)

func main() {

    cfg := elasticsearch.Config{
        Addresses: []string{
            "http://localhost:9243",
        },
        Username: "foo",
        Password: "bar",
    }
    es, err := elasticsearch.NewClient(cfg)
    if err != nil {
        panic(err)
    }
    res, err := esapi.CatIndicesRequest{Format: "json"}.Do(context.Background(), es)
    if err != nil {
        return
    }
    defer res.Body.Close()

    fmt.Println(res.String())
}

Вы можете настроить CatIndicesRequest, чтобы отформатировать вывод для вашего случая. Например, если вы используете CatIndicesRequest{Pretty: true, Human: true}. Он вернет что-то вроде этого:

[200 OK] green open .ent-search-actastic-workplace_search_accounts_v16                                                                           yvaDvj9RTMOoWqIpKdC_kw 1 1       1      0  12.1kb     6kb
green open .ent-search-workplace-search-content-events-ecs-ilm-logs-production-2022.01.23-000003                                        1D1BagTFQ6ypoZh2RdoUhQ 1 1       0      0    416b    208b
green open .ent-search-actastic-workplace_search_search_groups_v4-name-unique-constraint                                                b_FRbLWJQfqXXxyTdcU2cQ 1 1       1      0     7kb   3.5kb
green open .ent-search-actastic-crawler_crawl_requests_v4                                                                               kaUWb7YlTEeFH-Gcpz50qA 1 1       0      0    416b    208b
green open .ent-search-api-ecs-ilm-logs-production-2022.03.09-000016                                                                    EKZZOtqOR_e8pOztXsLU1g 1 1       0      0    416b    208b

Другие вопросы по теме