Posted at

SplunkでSHIFT-JISを扱うで!

まいど!SplunkでSHIFT-JISのログ・ファイルをソースとして読み込んだらUTF-8でEncodeされてしもて化けてもたー!なんてことあらへんか!?

Splunkは基本的にかしこやからcharsetは自動的に判別してくれるんやけどまー間違うこともあるわな!

今回はcharsetをSHIFT-JIS固定にする方法を教えるで!ウチはSHIFT-JISのログ・ファイルしか使わへんのやー!って場合に使えるで!


長いから読んでへん

・props.confをいじればええで!


charsetの変更

まぁかんたんな話なんやけどprops.confっちゅう設定ファイルをいじったればええんや。

ふつーにインストールしてたらパスは↓ここにあるから見てみてや。


ここやで

$SPLUNK_HOME/etc/system/local


localディレクトリが無い場合もあるらしいけど、その場合は作ったったらええねん。

で、いじったことなかったらこのディレクトリにprops.confは入っていないはずや。

お手本のprops.confを↓ここからぱくってコピってくるんや。


ここやで

$SPLUNK_HOME/etc/system/default


ほしたらコピってきたprops.confの↓のcharsetをAUTOからSHIFT-JISに変えたるんや。


こんな感じや

[default]

CHARSET = SHIFT-JIS
LINE_BREAKER_LOOKBEHIND = 100
TRUNCATE = 10000


splunkを再起動したら終わりや!


ソースの読み込み直しもいるで

charsetの設定を変更しても残念ながら既に読み込み終わったログ・ファイルは化けたままなんや。

splunkはインデックスに読み込むときにencodeしてしまうみたいやな。新しく追加されたログはちゃんとSHIFT-JISで読み込まれるんやけど昔のログも日本語で読みたいやんな?

その時は「設定 > データ入力」から一回化けてもたデータソースを削除してもっかい新しくデータソースを追加するんや。

インデックス容量をつこてしまうけどこればっかりは仕方ないんや。仕様や。


Program Filesにインストールしてる人は注意や

ワイはWindowsにSplunk入れたんやけど$SPLUNK_HOMEがデフォルトのProgram Filesになっとった。

ほんでここがややこしくてファイルの追加・削除はできるんやけど更新がでけへんのや。

更新ができるように設定変更するやり方はぐぐったらええんやけど、パパッとやりたいときは適当なところにprops.confを置いて修正してから/etc/system/localに入れたらええで。めんどいけどな。なんやこのWindowsの仕様。

ほな!