Невозможно создать визуализацию с помощью команды curl в elaticearch.

Я пытаюсь создать визуализацию с помощью команды curl. Я использую эластичный поиск 6.2.3. Я могу создать то же самое в elasticsearch 5.6.8. Я использую эту команду curl -XPUT http://localhost:9200/.kibana/visualization/vis1 -H 'Content-Type: application/json' -d @vis1.json Она показывает эту ошибку:

{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"Rejecting mapping update to [.kibana] as the final mapping would have more than 1 type: [visualization, doc]"}],"type":"illegal_argument_exception","reason":"Rejecting mapping update to [.kibana] as the final mapping would have more than 1 type: [visualization, doc]"},"status":400}

Содержимое vis1.json:

{
      "title": "vis1",
      "visState": "{\"title\":\"vis1\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showMeticsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"split\",\"params\":{\"field\":\"UsageEndDate\",\"interval\":\"M\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{},\"row\":false}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"ProductName.keyword\",\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}]}",
      "uiStateJSON": "{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}",
      "description": "",
      "version": 1,
      "kibanaSavedObjectMeta": {
        "searchSourceJSON": "{\"index\":\"4eb9f840-3969-11e8-ae19-552e148747c3\",\"filter\":[],\"query\":{\"language\":\"lucene\",\"query\":\"\"}}"
      }
    }

Это отлично работает в elasticearch 5.6.8, но не в 6.2.3.

Заранее спасибо.


person Piyush Kumar    schedule 10.04.2018    source источник


Ответы (1)


В Kibana 6 сопоставление .kibanaindex изменилось, чтобы удовлетворить грядущее критическое изменение «одно сопоставление на индекс».

Вы можете попробовать этот способ вместо этого:

curl -XPUT http://localhost:9200/.kibana/doc/visualization:vis1 -H 'Content-Type: application/json' -d @vis1.json

Также нужно немного изменить файл vis1.json (содержимое нужно перенести в подраздел visualization), например:

{
  "type": "visualization",
  "updated_at": "2018-04-10T10:00:00.000Z",
  "visualization": {
    "title": "vis1",
    "visState": "{\"title\":\"vis1\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showMeticsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"split\",\"params\":{\"field\":\"UsageEndDate\",\"interval\":\"M\",\"customInterval\":\"2h\",\"min_doc_count\":1,\"extended_bounds\":{},\"row\":false}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"ProductName.keyword\",\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}]}",
    "uiStateJSON": "{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}",
    "description": "",
    "version": 1,
    "kibanaSavedObjectMeta": {
      "searchSourceJSON": "{\"index\":\"4eb9f840-3969-11e8-ae19-552e148747c3\",\"filter\":[],\"query\":{\"language\":\"lucene\",\"query\":\"\"}}"
    }
  }
}
person Val    schedule 10.04.2018
comment
Я это сделал. Он создал визуализацию, но когда я открываю визуализацию, она показывает Не удалось найти эту визуализацию (id: vis1) - person Piyush Kumar; 10.04.2018
comment
Плохо, идентификатор был неправильным, я обновил команду curl, попробуйте еще раз - person Val; 10.04.2018
comment
Удачи с новым идентификатором? - person Val; 10.04.2018
comment
Да сэр. Благодарю вас. :) Ты обалденный. - person Piyush Kumar; 10.04.2018
comment
Круто, рад, что помогло! - person Val; 10.04.2018
comment
Сэр, я хочу знать, как я могу использовать этот же файл json на другом сервере elasticsearch. - person Piyush Kumar; 10.04.2018
comment
Поскольку это другая тема, я предлагаю вам создать еще один вопрос со ссылкой на этот. - person Val; 10.04.2018
comment
stackoverflow.com/questions/49751058/ - person Piyush Kumar; 10.04.2018
comment
сэр, пожалуйста, посмотрите на мою проблему. stackoverflow.com/questions/49751058/ - person Piyush Kumar; 11.04.2018