2018年7月10日火曜日

デフォルトフィールドがデフォルトで出るとは限らなかった

ことの始まり

Splunkにログを入れるときに、host,source,sourcetype,indexあたりのFieldは必須のFieldであり、サーチするとDefaultで必ず抽出されるわけですが、Default Fieldはその他にも、linecount,splunk_server,date_hour,date_wdayなどいくつも抽出されます。このdate_*をどのように使うかは結構アイデア次第だと思います。残業時間を
(date_hour<9 OR date_hour>18)
と表すところを目の当たりにしたとき、なるほどな〜、と少し感動しました。それ以降、date_*を意識して使うようにしています。


そこにあると思ったらない

本日の現場でdate_hourとdate_wdayを使ってサーチをしたら、結果が出てこないのであわくってしまいました。画像は再現環境ですが、見事にdate_*のFieldがないわけです。
最初はBugかと思いましたが、こんなBugが放置されているわけないので、周りの人に調べてもらった結果、date_*はいつでも抽出されるわけではないことがわかりました。
マニュアルみると、Index時にTimezoneをいじったら出てこないとか、いくつか制限があることがわかります。

https://docs.splunk.com/Documentation/Splunk/7.1.1/Knowledge/Usedefaultfields

また、以下のAnswersには、Modular Input系だと同様にでてこないとコメントされています。回答者はなんでこんな仕様を知っているのか謎ですが。
https://answers.splunk.com/answers/221233/why-are-date-fields-are-not-being-extracted-from-w.html

そのため、UFを使って、Windowsイベントログや Perfmonデータを取り込んでいる場合には、date_* は抽出されないということになります。


ワークアラウンド

最初、rexで頑張る必要があるのかと思われましたが、date_wdayはどうやるんだかわからず悩んでいたところ、「evalを使え」という話でした。以下のようなevalをサーチの後ろに差し込むことで、解決しました。


| eval a = strftime(_time, "%a"), w = strftime(_time, "%w")


evalをマスターすることは本当に重要ですね。


2018年7月4日水曜日

Splunkのショートカット





意外と知られていない

Splunkにもショートカットが存在します。Splunkに限った話ではないですが、ショートカットを駆使ことで作業効率が格段に上がるにもかかわらずキーコンビネーションを覚えるのはやはり大変なので、なかなか駆使するのは難しいです。

ショートカットはもう回数をこなして体で覚えるしかないと思いますが、ここではSplunkでよく使うショートカットを2つ紹介します。Mac版でも同じことができるショートカットはありますので、興味のあるマカーな方はマニュアルを参照してみください。


Ctrl + \

サーチバーにSPLをながながと書くときは、アカウント設定>基本設定から、行番号やら自動改行が選べるようになっているので、SPLの視認性は自動的に確保できるのですが、ダッシュボードに埋まっているレポートを「Open in Search/サーチで開く」するとごちゃっとしたSPLがでてしまい、そんなときにShift + Enterでちまちま改行をしてしまうこともあるのではないでしょうか。
そんなときは、Ctrl + \ を使いましょう。(フォントの都合でバックスラッシュになっていますが、円記号です。)
これ一発で一気に読みやすくなります。本当に便利だと思います

Win + Shift + E

自分でマクロ作ってる分には何も困らないのですが、他人の作ったマクロ(特にSplunk社謹製)はやはりマクロ名からは何をやっているのかさっぱりわからず、「Open in Search/サーチで開く」をして、マクロが出てきたときの絶望感はかなりのものです。ただ、そんなときに慌てずに Win + Shift + E (Win + ラージEとして覚える)を使いましょう。
マクロが展開されてSPL全文が確認できます。
仮想デスクトップとかを昔やっていた私からすると、ブラウザアプリなのにWinキーを使うショートカットを設定するのはセンスないな、と感じてしまうところはありますが、これも本当に便利です。

他にもたくさん

上記のURL先に飛んでもらえれば、他にもたくさんショートカットが備わっていることがわかりますので、ショートカット好きの方はぜひ覚えてみえてはいかがでしょうか。
覚えるのが大変な方にとってはここに紹介している2つを覚えるだけでもSPLライフがかなり効率化されると思います。