Timelion sheets exports for reuse on another Kibana instance

Hello,

everything is in the title :yum:

I have some saved sheets in my Kibana instance, and would like to find a way to take them (where are them saved ??) and put them in another Kibana installation on another PC...

Your ideas/suggestions are very welcome.

Have a great day.

All the things it saves are in the .kibana index.

There is an export option in the settings tab that should do the trick.

Hello Warkolm,

thank you for your reply.

I found the timelion-sheet Type in the .kibana index: with a simple RestApi http call, I was able to delete a saved sheet easily, like this: GET localhost:9200/.kibana/timelio-sheet/MySavedSheetId

Unfortunately, as I have no objects in the Settings/Objects tab, I was not able to export a sheet.

I suspect I could do this by using the RestApi again, I am still searching for a solution and will keep posted interested readers here.

Have a great day.

Hi there,

here I am again: I made a mistake in my last POST...
If you want to delete a timelion-sheet, you should send a "DELETE" (and not "GET") http request, like this:
DELETE localhost:9200/.kibana/timelion-sheet/MySavedSheetId

My apologies :slight_smile:

Back again:

if you want to export/import a timelion sheet, using the restApi, try this !

Export (get the content of your sheet, as seen above):
GET localhost:9200/.kibana/timelio-sheet/MySavedSheetId

Import:
take the content your export, but just keep the elements under "source", and put it like this in your destination Kibana instance:
PUT http://localhost:9200/.kibana/timelion-sheet/ImportedTestSheet
JSON content of this http PUT request:
{
"title": "ImportedTestSheet",
"hits": 0,
"description": "",
"timelion_sheet": [".es(index='jmeter_tir3',avg:ResponseTimeMs).label('Tir3').title(title='Response Time (ms)'),.es(index='jmeter_tir4',avg:ResponseTimeMs,offset=-11m).label('Tir4')",
".es(index='jmeter_tir3',avg:Bytes).label('Tir3').title(title='Bytes Per Request'),.es(index='jmeter_tir4',avg:Bytes,offset=-11m).label('Tir4')",
".es(index='jmeter_tir3',avg:Error).label('Tir3').title(title='Errors/s'),.es(index='jmeter_tir4',avg:Error,offset=-11m).label('Tir4')",
".es(index='jmeter_tir3').label('Tir3').title(title='Hits/s'),.es(index='jmeter_tir4',offset=-11m).label('Tir4')"],
"timelion_interval": "1s",
"timelion_other_interval": "1d",
"timelion_chart_height": 275,
"timelion_columns": 2,
"timelion_rows": 2,
"version": 1
}

In this example, the Timelion code used in this sheet was (just to help you read the JSON content above ):
.es(index='jmeter_tir3',avg:ResponseTimeMs).label('Tir3').title(title='Response Time (ms)'),.es(index='jmeter_tir4',avg:ResponseTimeMs,offset=-11m).label('Tir4')

Hope this could help :slight_smile:

GET .kibana/timelion-sheet/MySavedSheetId

This is not working. It gives me an output of

{
"_index": ".kibana",
"_type": "timelion-sheet",
"_id": "MySavedSheetId",
"found": false
}

Nothing found.

I have one saved under Timelion. How to export the timesheets?