Getting Data In
Highlighted

データの中身からタイムスタンプを生成する方法

Engager

SplunkForwarderを使って特定のフォルダ上に生成されるテキストファイルをSplunkに転送しています。
そのテキストファイルの中身が以下のようになっています。

No. : 3990Time: 1960936063Type: sysenterSNo.: a0 (NtQueryKey)Cid : 62c.640Name: explorer.exeNote: keyhandle: \REGISTRY\USER\S-1-5-21-1993962763-1844823847-839522115-1003CLASSES

No. : 3991Time: 1960936195Type: sysexitRet : 0 (STATUSSUCCESS)SNo.: a0 (NtQueryKey)Cid : 62c.640Name: explorer.exeNote: keyhandle: \REGISTRY\USER\S-1-5-21-1993962763-1844823847-839522115-1003_CLASSES

No. : 3992Time: 1960936237Type: sysenterSNo.: 77 (NtOpenKey)Cid : 62c.640Name: explorer.exeNote: rootdirectory: \REGISTRY\USER\S-1-5-21-1993962763-1844823847-839522115-1003CLASSES object_name: CLSID{21B22460-3AEA-1069-A2DC-08002B30309D}

このデータは単一のテキストにまとめて書き込まれて生成されるため、時間がすべて同一になってしまいます。
そうではなくデータの中の「Time: 1960936237」をタイムスタンプとして認識させて時系列順に表示される方法はありませんでしょうか?

http://answers.splunk.com/answers/83721/%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%82%92%E5%90%AB%E3%82%80%E3%82...
上記の質問が参考になりそうですが、Fowarderで送られたデータをデータのプレビューで表示を指定することは可能なのでしょうか?

よろしくお願いします。

0 Karma
Highlighted

Re: データの中身からタイムスタンプを生成する方法

Contributor

Forwarderで送られてくるデータはデータのプレビュー機能で表示できないので、一旦ファイルをIndexer上に置く必要があります。

Highlighted

Re: データの中身からタイムスタンプを生成する方法

Champion

エポックタイムがおかしいみたいで、正しければ自動認識でも行けそうですよ。
1960936063->2032年2月21日 09:27:43
↑これだと「Failed to parse timestamp:」と怒られます。

サンプルデータをコピペしてエポックタイムだけ修正したファイルをSplunkに食わせてみた結果です。
デフォルト設定のままでタイムスタンプを認識してます。

<イメージ>
alt text

View solution in original post

0 Karma
Highlighted

Re: データの中身からタイムスタンプを生成する方法

Engager

一旦、Indexer側にファイルを転送してデータのプレビューを行っています
>エポックタイムがおかしいみたいで、正しければ自動認識でも行けそうですよ。
>1960936063->2032年2月21日 09:27:43
タイムスタンプを自動検出 (デフォルト)でしょうか?これだと上手くいかないのですが…。詳細について詳しく説明してもらえませんか?

0 Karma
Highlighted

Re: データの中身からタイムスタンプを生成する方法

Champion

インデックスを作る都合上制限(チェック?)があるんだと思います。そのうち調べます。

0 Karma
Highlighted

Re: データの中身からタイムスタンプを生成する方法

Engager

ありがとうございます。エポックタイムの先頭2文字を13にしたところ、認識しました。
いろいろエポックタイムを修正して気が付いたのですがエポックタイムが大幅にずれていると認識してくれないようです。先頭2文字を11にし、2006年ごろにしたところ認識しませんでした。
スクリプトで時間を修正して対応しようと思います。
アドバイスありがとうございました。

0 Karma
Highlighted

Re: データの中身からタイムスタンプを生成する方法

Splunk Employee
Splunk Employee

Timestampの設定に関しては、ドキュメントでは説明されていないものが非常におおくあるので、以下の設定ファイルの仕様を見ていただいたほうがいいかもしれませんね。

/opt/splunk/etc/system/README/props.conf.spec

MAXDAYSAGO =
* Specifies the maximum number of days past, from the current date, that an extracted date
can be valid.
* For example, if MAXDAYSAGO = 10, Splunk ignores dates that are older than 10 days ago.
* Defaults to 2000 (days), maximum 10951.
* IMPORTANT: If your data is older than 2000 days, increase this setting.

0 Karma