2015-03-30 3 views
3

Я ищу список команд, необходимых для экспорта, а затем импортирует все сохраненные поисковые запросы, визуализации и панели мониторинга Kibana 4. Я также хотел бы иметь индексный шаблон Kibana 4 по умолчанию, созданный автоматически для logstash.Экспорт/Импорт Kibana 4 Сохраненные поиски, визуализация и панели мониторинга

Я попытался использовать эластичный резистор, как описано здесь http://air.ghost.io/kibana-4-export-and-import-visualizations-and-dashboards/, но индексный шаблон Kibana по умолчанию не создан, и сохраненные поисковые запросы, похоже, не экспортируются.

ответ

0

Вы можете получить, используя поиск elasticdump так:

elasticdump --input=http://localhost:9200/.kibana --output=$ --type=data --searchBody='{"filter": {"type": {"value": "search"}} }' 
2

Вы можете экспортировать сохраненные визуализаций, приборные панели и поиск от настройки >> объектов, как показано на изображении ниже

enter image description here

Вы также должны экспортировать связанные визуализации и поиск с панели инструментов. нажатие на экспорт панели не включает зависимые объекты.

Вся информация, относящаяся к сохраненным объектам, таким как сохраненные поисковые запросы, шаблоны индексов, информационные панели и визуализации, сохраняется в индексе .kibana в Elasticsearch.

2

Проект GitHub elastic/beats-dashboards содержит Python script для сброса определений Kibana (в JSON, один файл на определение) и shell script для загрузки этих определений экспортированных в экземпляр Elasticsearch.

Сценарий Python сбрасывает все определения Kibana, что в моем случае больше, чем я хочу.

Я хочу распространять только некоторые определения: в частности, определения для нескольких панелей мониторинга (и их визуализации и поиска), а не все панели мониторинга в моем экземпляре Elasticsearch.

Я рассмотрел различные варианты, в том числе сценарии написания, чтобы получить конкретное определение панели мониторинга, а затем проанализировать это определение и получить приведенные определения визуализации и поиска, но на данный момент я пошел со следующим решением (неэлегантным, но прагматичным).

В Kibana я редактировал каждое определение и вставлял строку в поле «Описание», которое идентифицирует определение как одно, которое я хочу экспортировать. Например, «#exportme».

В сценарии Python (из бит-панелей), который сбрасывает определения, я ввел параметр запроса в вызов функции поиска, ограничив его определениями с помощью этой идентифицирующей строки. Например:

res = es.search(
    index='.kibana', 
    doc_type=doc_type, 
    size=1000, 
    q='description:"#exportme"') 

(На практике, а не жесткое кодирование «хэштег», это лучшая практика, чтобы указать его с помощью аргумента командной строки.)

Одним из аспектов сценариев dump'n'load которые мне особенно нравятся, это их гранулярность: один файл JSON для каждого определения. Я считаю это полезным для контроля версий.

Смежные вопросы