Upload
fujio-suzuki
View
1.494
Download
0
Embed Size (px)
DESCRIPTION
イケテルエンジニアの分析エンジン Splunk 勉強会 8月の資料です。SPLという強力な検索コマンドの技の事例です。 カスタムサーチでシェルスクリプトのようなオリジナル検索コマンドが作成できるので、業務効率はさらにアップするでしょう! Splunk> Be an IT superhero, go home earlier.
Citation preview
Copyright © 2013 Splunk, Inc.
Splunk Search!
Splunk NiteX
大西 功祐
自己紹介
2
• Splunkやビッグデータ関連をちょこちょこ弄っています • このあいだHadoop Summitに行ってきました • ビッグデータの熱気を感じました • ちなみにSplunkブースは大人気でした
Agenda
時間の操作
カスタムサーチ
3
Splunkのデータ取り込み
タイムスタンプ 分析
データインプット
イベント境界 分析
セグメント 処理
インデックス 処理
-タイムスタンプを軸に自動判別
Mar 11 10:22:06 172.30.255.252 id=firewall sn=0017C514CBB8
time="2010-03-11 10:18:56" fw=221.186.88.32 pri=6 c=1024 m=537
msg="Connection Closed" n=0 src=211.19.55.156:9809:X2
dst=202.232.2.38:53:X7 proto=udp/dns sent=74 rcvd=90
tkondo @ macnica . net
前処理(コネクタ等での変換、正規化)不要
データ取り込みの流れ
5
Splunkの時間表示
Hit件数を時間を横軸にグラフ表示
Splunkがログから認識した タイムスタンプ
6
特定時間のイベントのみを抽出する
– 営業時間 営業時間は、午前9時から午後6時 土日は休み – 時系フィールドを使って表現 営業時間: date_hour < 9 OR date_hour >= 18 営業日:NOT date_wday ="saturday" NOT date_wday ="sunday" 土日: date_wday ="saturday date_wday ="Sunday"
Splunkで時間操作
たとえば・・・ 営業時間外に発生したイベントのみを抽出したい
7
特定時間のイベントのみを抽出する
Splunkで時間操作
コマンド: ((date_hour < 9 OR date_hour >= 18) NOT date_wday="saturday" NOT date_wday="sunday") OR (date_wday="saturday" OR date_wday="sunday")
8
Splunkで時間操作
特定時間の特定のログからイベントを抽出する
たとえば・・・
– Splunkコマンドを使って抽出 sourcetype=access* status=503 : Apacheのログから503エラーを抽出
bin _time=1h: 時間の区切りを1時間へ変更
top limit=1 _time: 最もエラーイベントが発生した時間帯(1つ)を抽出
eval earliest, eval latest: 1時間の最初の時間と最後の時間
convert timeformat, ctime: 表示時間の整形
営業時間外の中で最もApacheのエラーイベントが頻発した時間帯(1時間)を抽出したい
9
コマンド: sourcetype=access* status=503 ((date_hour < 9 OR date_hour >= 18) NOT date_wday="saturday" NOT date_wday="sunday") OR (date_wday="saturday" OR date_wday="sunday") | bin _time span=1h | top limit=1 _time | eval earliest=_time | eval latest=relative_time(_time, "+1h") | convert timeformat="%H:%M:%S" ctime(earliest) ctime(latest)
Splunkで時間操作
特定時間の特定のログからイベントを抽出する 対象データの絞り込み
10
コマンド: sourcetype=access* status=503 ((date_hour < 9 OR date_hour >= 18) NOT date_wday="saturday" NOT date_wday="sunday") OR (date_wday="saturday" OR date_wday="sunday") | bin _time span=1h | top limit=1 _time | eval earliest=_time | eval latest=relative_time(_time, "+1h") | convert timeformat="%H:%M:%S" ctime(earliest) ctime(latest)
Splunkで時間操作
特定時間の特定のログからイベントを抽出する
時間の区切りを変更
11
コマンド: sourcetype=access* status=503 ((date_hour < 9 OR date_hour >= 18) NOT date_wday="saturday" NOT date_wday="sunday") OR (date_wday="saturday" OR date_wday="sunday") | bin _time span=1h | top limit=1 _time | eval earliest=_time | eval latest=relative_time(_time, "+1h") | convert timeformat="%H:%M:%S" ctime(earliest) ctime(latest)
Splunkで時間操作
特定時間の特定のログからイベントを抽出する
単位時間のヒット件数の 1位のみを算出
12
コマンド: sourcetype=access* status=503 ((date_hour < 9 OR date_hour >= 18) NOT date_wday="saturday" NOT date_wday="sunday") OR (date_wday="saturday" OR date_wday="sunday") | bin _time span=1h | top limit=1 _time | eval earliest=_time | eval latest=relative_time(_time, "+1h") | convert timeformat="%H:%M:%S" ctime(earliest) ctime(latest)
Splunkで時間操作
特定時間の特定のログからイベントを抽出する
表示のための整形
Demo
13
14
Splunkのコマンドを使うだけでなく、Splunkのコマンドを作ることができます!
カスタムサーチ
参考URL: http://docs.splunk.com/Documentation/Splunk/5.0.4/AdvancedDev/SearchScripts
15
カスタムサーチをつくる
作成するコマンド:shape 動作:2行以上あるフィールドの中身を集計し、 そのログが、行数が多いのか、短いのかなどを 集計する
参考URL:shape http://docs.splunk.com/Documentation/Splunk/latest/Search/Customsearchcommandshape
16
1. コマンドを作成 ( shape.py ) 2. commands.confにコマンドを登録 3. authorize.confを修正して権限をコントロール 4. Splunkサーバを再起動
[shape] filename = shape.py
[capability::run_script_shape] [role_User] run_script_shape = enabled
カスタムサーチ作成の流れ
Demo
17
http://www.macnica.net/splunk/
One more thing….
Splunk niteX 次回のご案内
http://splunkseminar.doorkeeper.jp/events/6557
2013年10月30日 19:00 新宿 株式会社エルセナ セミナールーム
「.confに行ってきました!」- Splunkの世界ユーザ会について
「Splunkの技 by マクニカの中の人」- こんな技があります!
「Ver.6で、できるようになったこと」 – 10月1日発表!! 進化したSplunkをお見せします!
Splunk> Beer 懇親会
希望者のLT(5分間プレゼン) *LT1:「Splunk壊してマジあせった。」 @fujiosuzuki *LT2:(仮)「Splunk入れて嬉しかった。」 @やまださん
Copyright © 2013 Splunk, Inc.
Happy Splunking!
マクニカネットワークス株式会社