Splunkで基本的な検索をしてみる
Splunkで基本的な検索をしてみる
前回、Splunkへのデータの取り込みを行ったので、今回は取り込んだデータの検索とレポートを行ってみます。
で、今更気付いたのですが、Splunkのサイトにチュートリアル用のサンプルログがあることを発見。
Get the tutorial data into Splunk
せっかくなのでこのサンプルログを使って検索をしてみます。
サンプルログと取り込む方法は上記リンク参照。
ログイン後に、左にある「Search & Reporting」を選択します。
「Search & Reporting」の初期画面は以下です。
キーワード検索
検索ボックスにキーワードを入力することで特定のキーワードでデータの全文検索を行ってくれます。
チュートリアル通りに試しに、「buttercupgames」で検索してみます。
グラフは検索キーワードにマッチしたイベントが、期間ごとに何件あるかをグラフで表しています。このグラフを操作することで期間を絞り込んだり、広げたりすることもできます。
画面左下は「Field」と呼ばれ、データから自動抽出した項目が表示されます。どのホストが一番多いのかとか、どの時間帯が多いのかなど、項目ごとに絞り込みを行うことができます。
画面右下は検索結果。検索キーワードが黄色網掛けで表示されています。
結果は時系列に新しい順に表示されていて、ソートの変更は出来ないっぽい。
キーワード検索の注意点
どうやらSplunkは内部で単語に分割してインデックス化してるっぽい。
「Invalid」で検索すると表示されるけど、「Invali」で検索すると結果が表示されません。
大文字小文字は区別しないらしく、「invalid」でも検索可能。
部分検索をする場合は、「*」を活用します。「Invali*」と検索すれば、Invaliで始まる全てのキーワードを検索します。
日本語の検索はどうなんだろう。
後で、Twitterのログを読み込ませてみる予定なのでそこで確認してみます。
空白を含むキーワードを検索する場合は、”mac os”のように「”」(ダブルクォーテーション)で囲みます。
論理演算子を使って、AND,OR,NOT検索も可能。
Start searching
via:Start searching
検索する時間指定
どの時間範囲で検索するかも可能で、検索ボックス横の「All Time」と記載されているボタンを選択することで時間範囲の指定が可能。
About the time range picker
Fieldを使った検索
Fieldを使った検索が出来るという点が、Splunkを使う利点になるんじゃないかと思っています。
Splunkはログを取り込む際に、ログ中のデータ項目をFieldとして認識してインデックス化を行います。
検索されたFiledが画面左下に表示されます。
例えば、「clientip」というFiledはクライアントのIPアドレスが入っていて、選択するとクライアントIPアドレスの多い順に結果が表示されます。
ここで例えば、ReportsのTop valuesをクリックすると簡単にビジュアル化してくれます。
他にも様々な検索方法がありますので、詳しくはSplunkのドキュメントをご覧下さい。
Use fields to search