VMwareに「vRealize Log Insight」というログ管理のソフトがある。
このソフト、標準設定だと、現在時刻の±10分以内のデータであれば、そこに記録されているタイムスタンプで取り込むが、その範囲より外れているものだと、取り込んだ時間のタイムスタンプに置き換えて記録してしまう仕様となっている。
どっかに設定があるはずと、vRLIアプライアンスの/usr/lib/loginsgiht/ディレクトリ内だろうと当たりをつけ、「600」(秒)で検索してみた。
その結果、/usr/lib/loginsight/application/etc/loginsight-config-base.xml内に「max-tolerated-client-time-drift」という設定項目を発見した。
この設定に関して調べると「Log Insight Ingestion API: Always using the Client Timestamp」が出てきた。
ここには、/storage/core/loginsight/config/にあるloginsight-config.xml#?? の最下行にある
「」の直前に「~」のエントリを追加して、LogInsightを再起動する、とあります。
しかし、これを行ってみても、また、/usr/lib/loginsight/application/etc/loginsight-config-base.xml の編集を行ってみてもうまく行きません。
次に設定ファイル名「loginsight-config.xml」で検索するとVMware KBの「Changing internal configuration options in VMware vRealize Log Insight」が出てきました。
Log Insight 2.5以降は、設定を変更する場合、xmlファイルの直接編集ではなく、vRLIのWeb GUIにある非公開URLより設定変更を行う、とあります。
これに従い、Web UI上の設定を見ると「max-tolerated-client-time-drift」が変更前の値であることを確認
(すべての設定を表示、にチェックを入れないと表示されません)
「max-tolerated-client-time-drift」の値を「9223372036854775807」に変更し、LogInsightを再起動することで、現在時刻と大幅に異なるログデータを、元のタイムスタンプのまま取り込むことに成功しました。