Kibana не показывает никаких результатов на вкладке «Откройте для себя».

У меня есть настройки elasticsearch (версия 1.7.3) и Kibana (версия 4.1.2) для индексации ошибок XML-файлов Elmah нашего приложения. Я использую .Net для анализа файлов xml и клиента Nest ElasticSearch для вставки индексов в ElasticSearch. Проблема в том, что Kibana не отображает никаких данных на вкладке «Discover».

Когда я запускаю curl -XGET localhost: 9200 / .kibana / index-pattern / eol? команду, я получаю следующий ответ:

{"_index":".kibana","_type":"index-pattern","_id":"eol","_version":2,"found":tru
e,"_source":{"title":"eol","timeFieldName":"errorTime","fields":"[{\"name\":\"_i
ndex\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"indexed\":false,\"an
alyzed\":false,\"doc_values\":false},{\"name\":\"filePath\",\"type\":\"string\",
\"count\":0,\"scripted\":false,\"indexed\":true,\"analyzed\":true,\"doc_values\"
:false},{\"name\":\"_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\
"indexed\":true,\"analyzed\":false,\"doc_values\":false},{\"name\":\"message\",\
"type\":\"string\",\"count\":0,\"scripted\":false,\"indexed\":true,\"analyzed\":
true,\"doc_values\":false},{\"name\":\"errorTime\",\"type\":\"date\",\"count\":0
,\"scripted\":false,\"indexed\":true,\"analyzed\":false,\"doc_values\":false},{\
"name\":\"_source\",\"type\":\"_source\",\"count\":0,\"scripted\":false,\"indexe
d\":false,\"analyzed\":false,\"doc_values\":false},{\"name\":\"_id\",\"type\":\"
string\",\"count\":0,\"scripted\":false,\"indexed\":false,\"analyzed\":false,\"d
oc_values\":false}]"}}

Текущая ситуация Elasticsearch запущен и работает, отвечает на API, выполняя запрос непосредственно в Elasticsearch, например http://localhost:9200/eol/_search?q= * возвращает много результатов

введите описание изображения здесь

Kibana запущена и работает, даже обнаруживает, что индекс "eol", предоставляемый Elasticsearch. Kibana также показывает правильные свойства и тип данных документов "eol". Вкладка "Discover" не показывает никаких результатов ... даже при установке периода времени до пары лет ... Я попытался удалить индекс на вкладке "Настройки", перезапустить Kibana, а затем повторно добавить индекс в настройках. Я также попытался сохранить поле даты в формате yyyy-MM-ddThh: mm: ss, но я все еще не вижу никаких результатов. Я считаю, что проблема связана либо с форматом даты Elmah UTC (например, 2015-10-13T19: 54: 49.4547709Z), либо с сообщением Elmah. Думаю, ElasticSearch нравится сообщение Elmah, а Kibana - нет.

Любые идеи??

Вот как Кибана видит индекс "eol":  введите описание изображения здесь

..и то, что я вижу на вкладке обнаружения:  введите описание изображения здесь введите описание изображения здесь


person Ajit Goel    schedule 14.10.2015    source источник
comment
Это может быть проблема времени. Можете ли вы взять что-нибудь вроде «Последние 5 лет» и посмотреть, есть ли какие-то результаты.   -  person Vineeth Mohan    schedule 15.10.2015
comment
@VineethMohan: когда я ищу последние 12 часов, кибана ничего не показывает. Сейчас веду поиск последние 5 лет.   -  person Ajit Goel    schedule 15.10.2015
comment
@VineethMohan: За последние 5 лет данных не было найдено.   -  person Ajit Goel    schedule 15.10.2015
comment
Можете ли вы показать, что вы получаете с curl -XGET localhost:9200/.kibana/index-pattern/eol? Мне кажется странным, что в разделе «Доступные поля» нет полей, хотя они отображаются в разделе «Настройки» ›Индексы.   -  person Val    schedule 16.10.2015
comment
Можете ли вы также показать трассировку журнала, в которой вы запрашиваете Kibana? И наконец, какую версию Kibana вы используете? Мы заставим это работать, не беспокойтесь ...   -  person Val    schedule 16.10.2015
comment
Спасибо, Вэл. Я добавил ответ Curl, версию Kibana, трассировку журнала в браузере Chrome, когда я нажимаю F12. Если вы когда-нибудь приедете в район DFW в США, ваш обед будет за меня.   -  person Ajit Goel    schedule 16.10.2015
comment
Отлично, рад, что ты понял !! Это правда, что Kibana может хотя бы сообщить об этой ошибке в пользовательском интерфейсе.   -  person Val    schedule 17.10.2015
comment
Кстати, для Elasticsearch есть журнал ошибок ELMAH: github.com/elmahio/Elmah.Io.ElasticSearch < / а>   -  person ThomasArdal    schedule 10.08.2016


Ответы (2)


Я использовал Nest для вставки данных в ElasticSearch. Похоже, что способ, которым Nest сериализует список и делает запрос в ElasticSearch, содержит специальные символы, которые не нравятся Кибане.

Раньше (не работает):

private static void WriteErrorsIntoElasticSearchIndex(ElasticClient elasticClient, List<error> errors)
        {
                elasticClient.Index(errors);    
        }

После (работы):

private static void WriteErrorsIntoElasticSearchIndex(ElasticClient elasticClient, List<error> errors)
        {
            foreach (var error in errors)
            {
                elasticClient.Index(error);    
            }
        }
person Ajit Goel    schedule 16.10.2015
comment
Кстати. вы можете попробовать elasticClient.IndexMany(errors). - person Rob; 17.10.2015
comment
Спасибо, Роб, я нашла эту собственность, но очень торопилась. Я протестирую и сообщу сообществу. - person Ajit Goel; 18.10.2015

у вас есть "\", обычно в результатах elasticsearch нет, JSON не может проанализировать результат, потому что он не подходит,

person cyril    schedule 10.08.2016