ITの窓辺から

三流IT技術者の日常

Splunkでグラフィカルな可視化をする

今日も今日とてSplunkです。バージョンは変わらず7.1.1です。

今回はSplunkの機能を使ってログの統計情報をグラフィカルに表示してみます。そのためにはいくつかの検索構文を予習する必要があります。ところで検索構文のことをSplunkではサーチコマンドというようです。

chart

ログの統計を取ります。chartの後ろにSplunkで用意されている関数を書くことで、その関数の出力結果を表形式にして数えることができます。さらにbyとoverという補助句が用意されています。byとoverを両方使用することで、それぞれ列、行に指定するものを設定できます。

とりあえず前回記事で使っていたSquidアクセスログの宛先URLのフィールド名として設定したSquid_HTTP_DstURLを使用して、どのURLに何回アクセスしたかを表示してみます。検索対象はSquid1号機として想定したSquid01.logです。

f:id:ReaLiZeZNSG:20180702231800p:plain

結果は下記のような表示になります。

f:id:ReaLiZeZNSG:20180702231939p:plain

これは検索結果の抜粋です。count関数を使用することで勝手にこのような表形式になります。ちなみにbyまたはoverを1個しか使用しない場合はbyでもoverでも結果は同じになるようです。

今度はホストごとのアクセス回数を表示します。先程同様、前回記事で使っていたSquid2号機として想定したSquid02.logをbyの後ろに付け加えます。それぞれのSquidはsourceの値が異なるので、sourceを列(by)、Squid_HTTP_DstURLを行(over)としてサーチコマンドを指定します。

f:id:ReaLiZeZNSG:20180702232719p:plain

実行結果の抜粋は以下のとおりです。

f:id:ReaLiZeZNSG:20180702232806p:plain

ちなみにsquid02.logはsquid01.logをコピーしただけなので内容は全く同じです。

これだけでも生ログをそのまま表記するだけと比べるとそこそこグラフィカルになっていると思います。今度はこの表をグラフにしてみます。Excelチックになってきましたね。

グラフ化

ログ一覧のすぐ上の「視覚エフェクト」をクリックします。

f:id:ReaLiZeZNSG:20180702233213p:plain

するとグラフが表示されます。

f:id:ReaLiZeZNSG:20180703000209p:plain

グラフにマウスオーバーするとその棒が示す要素が見られます。今回は横軸がSquid_HTTP_DstURLなので、それぞれの棒はURLを示しています。

グラフ形式はいくつかのプリセットから選べます。

f:id:ReaLiZeZNSG:20180703000356p:plain

円グラフを選んでみます。

f:id:ReaLiZeZNSG:20180703000448p:plain

大分それらしくなってきたのではないでしょうか。

サーチコマンドを駆使することでログから色々な情報の抽出ができます。検索するシーンを想定して予めフィールド名やイベントタイプ等を決めておく必要があるでしょう。この辺はSplunkで実行できるサーチコマンドにある程度馴染んでいかないと適切な設計ができないですね。サーチコマンドの紹介は今後少しずつやっていきます。