Kibanaで長らく要望されている機能である、Discoverタブでの検索結果をCSVエクスポートする機能が、Version.6からついに実装される。GAリリースが待ち遠しく、Alpha版を試してみた。
Kibana 6.0.0-alpha2 is released | Elastic Blog
CSV export
Did someone say CSV export? We’re pretty sure we heard someone ask for CSV export. Just to be safe, we built CSV export.
Search for the documents you want to export in the Discover app, and then export matching documents as a CSV file via the reporting menu. CSV export comes with X-Pack basic, which is our free license.
ElasticスタックVer 6.0.0を試す
ElasticスタックVer 6.0.0は2017/7月現在alpha2版がリリースされている。本記事時点でalphaリリースのため画面等は変更になる可能性がありますがご了承ください。
CSVエクスポート機能はX-Pack Reportingのうちの無償範囲で提供される。
検証用にDockerコンテナでKibana + Elasticsearchを構築する。docker-compose.yml
ファイルはこちらの通り。設定は環境変数で与え、X-Pack Securityは無効化している。(インストールはElasticのリポジトリ追加によりYumでも可能)
$ sudo vi ./docker-compose.yml version: '2.1' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:6.0.0-alpha2 container_name: els_60 environment: - bootstrap.memory_lock=true - xpack.security.enabled=false - xpack.monitoring.history.duration=1d - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - "network.host=0.0.0.0" - "http.host=0.0.0.0" ulimits: memlock: soft: -1 hard: -1 nofile: soft: 65536 hard: 65536 mem_limit: 1g memswap_limit: 1g volumes: - es_data1:/usr/share/elasticsearch/data ports: - 9200:9200 networks: - kibana_net kibana: image: docker.elastic.co/kibana/kibana:6.0.0-alpha2 container_name: kibana_60 environment: SERVER_NAME: "kibana.designet.local" ELASTICSEARCH_URL: "http://els_60:9200" XPACK_MONITORING_ELASTICSEARCH_URL: "http://els_60:9200" XPACK_SECURITY_ENABLED: "false" ports: - 5606:5601 networks: - kibana_net depends_on: - elasticsearch links: - elasticsearch volumes: es_data1: driver: local networks: kibana_net:
CSV Export動作確認
起動したElasticsearch, Kibanaでindex取り込み設定をすると、DiscoverタブからReporting > Generate CSVでSave済みの検索をエクスポートできる。
生成されたCSVファイルをダウンロードすると、以下の通りCSV形式のファイルを得られる。
timestamp,"source_node.ip","source_node.name","cluster_state.status","_type" "2017-07-17T09:54:16.189Z","172.19.0.2",SstbTYy,,"index_stats" "2017-07-17T09:54:16.189Z","172.19.0.2",SstbTYy,,"index_stats"
これまではPDFでのエクスポートだったが、CSVでのエクスポートが可能になり、外部連携が容易になる。
なお、Discoverタブで単純にindexを開いた状態ではReport機能は使用することができず、以下のメッセージが表示される。
Please save your work before generating a report.
そのため、カラムの選択をしてSaveしてからReporting機能を使用する。
Virtual Memoryのエラー対応
DockerでElasticsearchを動かす場合にはこちらの通りVirtual Memoryの拡張が必要。
els_60 | ERROR: [1] bootstrap checks failed els_60 | [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
まとめ - Kibana6.xのReporting CSV Export機能を試してみる
Kibana6.xのX-Pack Reportingに含まれるCSV Export機能を試してみた。期待通りの動作が可能だったため、これまでの独自パッチ適用は不要で、X-Packを適用すればよくなる。X-Packではあるが無償範囲で使用可能であるため、ハードルなく使用できる。