splunkの基本操作

1.ログイン

(1)ページにアクセス
指定されたURLに接続する。Splunkのログインは、以下のように8000番ポートを指定する場合もある。
http://52.0.3.107:8000
f:id:seeeko:20211116152431p:plain

(2)IDパスワードの入力
IDとパスワードを入力してログイン。
すると、ホーム画面が表示される。
f:id:seeeko:20211116152610p:plain

2.検索およびフィルタ

(1)検索概要

Splunk ホーム画面にて、左側App欄の[Search & Reporting]をクリック。
検索窓に文字列を指定することで、各種のフィルタや検索ができる。
f:id:seeeko:20211116152719p:plain

❶基本データを見る
検索窓に「index=main」を入力して検索
❷GUIを活用する。
コマンドで操作するより、GUIでの操作が便利である。
左側の条件をクリックして条件を絞っていく
❸条件を並べる
GUIを使うとその様子が見えるが、半角スペースを入れて、条件を並べることができる。たとえば、以下

index=main source="secure.log" action=failure

❹時間の指定
右上の緑の虫眼鏡マークの左にあるボタンで選択。「全期間」を選択すると、すべてのログを表示

(2)書き方の例

❶実行が失敗したログを指定
左側のフィールドで「action」を選択する。または、検索窓にaction=failure と指定する。

❷statsにより統計を取る
count,avg,sumといった関数を使用して集計
stats [関数] by [統計を取りたい対象]
例)・・ | stats count by user

❸timechartにより時系列に統計を取るコマンド
”span=“オプションで時間間隔を指定可能。
timechart [オプション] [関数] by [統計を取りたい対象]
例)・・ | timechart span= 1m count by user

(3)その他

❶ソート(sort)とカウント(count)
昇順/降順に検索結果を表示させるコマンド。
sortコマンド後に – (ハイフン)をつけると降順、つけないと昇順にソート。
”count”でソートすれば回数を数えることも可能。
例) ・・ | sort -count

❷ANDとOR
・ANDの書き方
例)AND 送信元「203.0.113.125」かつリクエストメソッド「GET」で検索
フィルタ:203.0.113.125 AND method=GET

・ORの書き方
例)例)AND 送信元「203.0.113.125」またはリクエストメソッド「GET」で検索
フィルタ:203.0.113.125 OR method=GET

❸パイプ
・|の使い方
基本的な使い方はLinuxコマンドと同じ。前のコマンドの出力が次のコマンドの入力になるように繋げる。
例)index=main ログの中から「XXX.log」という名前のログで、かつ、件数がTOP10のuseragentを検索

index=main source=XXX.log | top limit=10 useragent

❹カンマ
同じコマンドで複数対象選ぶ場合は , (カンマ)が使える。
例) index=main ログで「action,src」で集計し、回数でソートをかける

index=main |stats count by action, src | sort –count