Kibanaで.rawの付いたフィールド名を表示するには


#1

kibanaのSettingsタブのIndicesタブの画面のFieldsのフィールド名の一覧に、
ある1つのフィールド名に対して「フィールド名」と「フィールド名.raw」というように
(例) name と name.raw
.rawの付いていないものと.rawの付いているものの2種類がペアで表示される場合と
.rawの付いていないものだけが表示される場合があるのですが、
この違いは何に起因するのでしょうか。
(typeはstringで全角文字の場合に限定していいです)

.rawの付いていないものだけしか表示されていない状態で
.rawの付いているものも表示させるには
どのようにすればよいのでしょうか。

例えば、先日、ご質問しましたTopicが
「Logstash-2.3.0の設定ファイルで*.logを指定すると読み込まれなくなる」
の質問の中に記載しましたサンプルの例では、
elasticsearchの中をkibanaで見てみると
.rawの付いていないものだけしか表示されていないのですが、
.rawの付いたもの(例えば、name.raw)を表示するには、
どのようにすればよいのでしょうか。

動作環境は
Windows7
logstash-2.3.0
elasticsearch-2.3.0
kibana-4.5.0-windows
です。

よろしくお願いします。


(Jun Ohtani) #2

LogstashがelasticsearchのoutputプラグインでElasticsearchのtemplateという機能を利用する仕組みを持っています。
そこで、使用されいるテンプレートはデフォルトでは、こちらになります。

https://github.com/logstash-plugins/logstash-output-elasticsearch/blob/master/lib/logstash/outputs/elasticsearch/elasticsearch-template.json

ここで、.rawというフィールドの指定などがあります。
templateがどういったものかなどは、以下のものが参考になるので、こちらも合わせてご覧いただければと。


#3

このテンプレートファイルでxxxx.rawを作っていたわけですね。
インデックス名がtestだとtemplateの"logstash-*"に一致しないので
ここをtestにすればよいわけですね。

私の場合は、elasticsearch-template.jsonというファイルが
logstash-2.3.0\vendor\bundle\jruby\1.9\gems\logstash-output-elasticsearch-2.5.5-java\lib\logstash\outputs\elasticsearch
のフォルダの中にありましたので、
このファイルの中の
"template" : "logstash-",
の部分を
"template" : "test",
と書き換えて実行してみたのですが
xxxx.rawが作成されていませんでした。
"template" : "
",でも確認してみましたが駄目でした。
"template" : "logstash-*",以外の部分にも何か変更が必要でしょうか。
なお、インデックス作成時に適用されるということなので
elasticsearchの中のtestインデックスを
一度削除してからlogstashを起動して確認しています。

よろしくお願いします。


(Jun Ohtani) #4

テンプレートはelasticsearchに登録されます。登録されたものがどんなものかを確認するのが良いかと。あと、テンプレートは複数登録できるので、ご自身の用途に合わせて管理されると良いと思います。
登録されているテンプレートはこれで取得できます
https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-templates.html#getting


#5

ありがとうございました。

テンプレートを登録することにより
xxxx.rawが表示されるようになりました。

元々存在していなかった
xxxx.raw
@timestamp
@version
geoip.xxxx
などのフィールドがなぜ生成されているのか不思議に思っていましたが
テンプレートによって生成されていることが分かりました。

ところで、
_index
_source
_id
message
tags
path
host
_type (*1)
_score (*1)
というようなフィールドも新たに生成されているのですが、
こちらはどのような仕組みで生成されているのか
教えていただけないでしょうか。
(*1) はテンプレートがない場合に表示されている

よろしくお願いします。


(system) #6