sshota
(shota)
September 6, 2019, 2:22am
1
お世話になります。
UTCのdateデータを扱っています。
Mapsのtooltipの時間のみが9時間マイナスされて表示されてしまいます。
-- Source Settings --> Fields to display in tooltip : dateのフィールドを選択
下記スレッドの事象と内容は似ていますが、言及されている内容は対応済みです。
json形式のデータをelasticsearchへ登録し、kibanaで確認すると9時間時刻がずれます。(登録したデータより+9時間)
回避・修正方法を教えて下さい。
■環境
・Windows Server 2016
・kibana 6.4.2
・elasticsearch 6.4.2
-- Advanced Setting --> Timezone for date formatting : "UTC"を選択
このため、kibanaの別画面(ex:DiscoverのTimeフィールドなど)は、想定通り登録されているデータの時間通りに表示されているのですが、Mapsのtooltipの時間のみずれている状況です。
(=同一の項目でMapsのtooltipに設定した場合のみずれます)
また、上記スレッドの事象と異なる部分は、+9時間 ではなく -9時間 となってしまう点です。
動作的には勝手にJSTと認識して、タイムゾーン設定のUTCに合わせようとして -9時間 しているように見えます。
原因、解決策などご教示いただけますと幸いです。
sshota
(shota)
September 6, 2019, 6:25am
2
色々と試したところ、追加で以下が分かりました。
Mapsのtooltipの表示について、
・date型のフィールドであれば、全ての時刻が -9時間 されてしまう。
・Scripted filedで、単純にdate型のフィールドを取り出しただけの項目(date型)を作ったところ、そのフィールドの時刻はずれなかった。
引き続き情報をお待ちしております。
tsgkdt
(tsgkdt)
September 6, 2019, 6:55am
3
こんにちわ。
こちらで試したところ、-9時間ずれることもなく、UTC時刻で表示されています。
確認した環境は以下の通りです。
動作環境
Elasticsearch, Kibana ともに7.3.0
mappingと投入したテストデータ
date型のフィールドであれば、すべての時刻が~とありますので、date型のフィールドtimestampを用意しました。
UTC(2019-09-06 00:00:00)、とJST日本時間(2019-09-06 09:00:00)の二つのデータを用意しました。
Mapsでツールチップの設定
ツールチップでtimestampを指定しました。
Maps画面でツールチップでの時刻を確認
ツールチップにtimestampを指定して、マウスオーバーさせて確認したのが上の図です。
UTCの時刻でずれることなく表示されました。
東京のデータは、UTCの0時で登録したので、0時で表示されていますし、
千葉市あたりのデータは、日本時間で9時なので、UTCだと0時となっていて期待通りです。
KibanaのAdvanced Settingで、タイムゾーンをAsia/Tokyoにかえると、Maps上では両方とも9時で表示され、これも期待通りです。
再現しようと試みていますが、何かそちらで行っている設定と違うところはありますか?
sshota
(shota)
September 6, 2019, 7:16am
4
ありがとうございます。
取り急ぎですが、動作環境と関係あるかはわかりませんが違いがあるところです。
動作環境
Elasticsearch, Kibana ともに7.3.0
mapping情報
{"test-index" : {"mappings" : {"properties" : {
~
"testdate" : {
"type" : "date",
"format" : "yyyy/MM/dd HH:mm:ss||yyyy/MM/dd||epoch_millis"
},
~
} } } }
それ以外
データは全てUTCで表示する想定だったので、input時にタイムゾーンは指定していません。
すべてのdate型のデータがデフォルトのUTCで登録されていると理解しています。
表示されているデータ形式が少し違っています。たとえば ”testdate 2019-Sep-05 00:00:00"のように表示されます。
→ こちらは、Advanced Settingによるものだったので、取り下げます。
tsgkdt
(tsgkdt)
September 7, 2019, 1:24pm
5
提示されたtestdateのmappingを使って確認しますと、こちらでも確かに9時間ずれたデータでMapsが出るのを確認できました。
投入した値:2019/09/07 00:00:00
期待する値:2019/09/07 00:00:00
表示した値: 2019/09/06 15:00:00
同じ時刻を、dateフィールドでフォーマット未指定時のフィールドに投入したときは、時間がずれなかったです。
sshota
(shota)
September 9, 2019, 2:21am
6
ありがとうございます。
提示したtestdateのmappingに指定されているフォーマットは、事前にmappingを指定していない状態で、下記データを投入した際にlogstashが自動で作成したフィールドとなります。
"testdate":"2018/01/01 12:00:00"
この場合、当該フィールドのmappingを事前指定しておくしかないのでしょうか。
運用の都合上、mappingで事前指定することは、できる限り避けたいのですが…。
また、本件はどういった理屈で発生しているのでしょうか。
単純にkibanaのバグなのでしょうか?
それとも、このフォーマットの場合はMapsは(9時間?)時間がずれるという仕様があり、どこかで明記されているものでしょうか?
tsgkdt
(tsgkdt)
September 9, 2019, 3:03am
7
OSのタイムゾーンをUTCにすると、Maps上で9時間引かれる現象は解消しました・・・
入っているデータは同じなのに、Discoverでは期待したUTCの時刻になるが、Mapsでは時間がずれている、という不具合のように思えております。
Issueを作るのが早そう(かつ、本家の人がちゃんと見てくれるという点で確実)かと思います。
sshota
(shota)
September 20, 2019, 7:45am
8
お礼ができておらず大変失礼いたしました。
おっしゃるとおり、Issueを作ることで対応したいと思います。
検証などご協力いただきありがとうございました。
system
(system)
Closed
October 18, 2019, 7:45am
9
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.