Не указан обработчик для ключевого слова типа в Field ElasticSearch 6.4.3 - PullRequest
0 голосов
/ 02 декабря 2018

Интересно, в чем причина?Это код

package main

import (
    "context"
    "errors"
    "fmt"
    "time"

    "github.com/olivere/elastic"
)

const (
    indexName    = "applications"
    docType      = "log"
    appName      = "myApp"
    indexMapping = `{
        "mappings" : {
            "log" : {
                "properties" : {
                    "app" : { "type" : "keyword" },
                    "message" : { "type" : "keyowrd" },
                    "time" : { "type" : "date" }
                }
            }
        }
    }`
)

type Log struct {
    App     string    `json:"app"`
    Message string    `json:"message"`
    Time    time.Time `json:"time"`
}

func main() {

    client, err := elastic.NewClient(elastic.SetURL("http://localhost:9200"))

    if err != nil {
        panic(err)
    }

    err = createIndexWithLogs(client)
    if err != nil {
        panic(err)
    }

    // err = findAndPrintAppLogs(client)
    // if err != nil {
    //  panic(err)
    // }

}

Я получил ошибку, Нет обработчика для ключевого слова типа, объявленного в поле ElasticSearch 6.4.3.Основываясь на информации, которую я получил, ES 6.4.3 должен использовать ключевое слово type.Я понятия не имею, что мой код не работает.

Кто-нибудь знает, в чем ошибка?

Спасибо

1 Ответ

0 голосов
/ 02 декабря 2018

Вы ошиблись "keyword" как "keyowrd" для "message" поля.Исправлено ниже:

{
        "mappings" : {
            "log" : {
                "properties" : {
                    "app" : { "type" : "keyword" },
                    "message" : { "type" : "keyword" },
                    "time" : { "type" : "date" }
                }
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...