仙台の山奥で自転車に乗ったり転んだり

愛車の GIOS でサイクリングしたりポタリングしたり、それをブログに記録してみたり。ロードバイクや自転車や坂のことを書いてみたり。ときたまプログラムのことを忘れないようにメモってみたり。

kSarでsarコマンドの出力をグラフ化、と日本語の文字化け

先日仙台のインフラ勉強会に参加して、藤田さんが発表でちょっと見せてくれたkSarが良さげだったので試してみました。前に試したときは、良さを堪能できなかった、というか英語で使いこなせなかったのですが、コンソール上でsarが出力する数字と睨めっこするより、ずっと建設的で健全な気がしたので再挑戦。

ふつうに「$ sar -A」の出力結果を読み込んだら何か失敗した。日付など文字化けしているようなので、サーバのロケール設定なんだろうと当たりをつけた。
でも、「$ LANG=C」とかやってもうまくいかない……。ふと、localeコマンドでロケールの設定を確認してみたら、LANG以外にもそれっぽい設定がわらわら……。

$ locale
LANG=C
LC_CTYPE="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_PAPER="ja_JP.UTF-8"
LC_NAME="ja_JP.UTF-8"
LC_ADDRESS="ja_JP.UTF-8"
LC_TELEPHONE="ja_JP.UTF-8"
LC_MEASUREMENT="ja_JP.UTF-8"
LC_IDENTIFICATION="ja_JP.UTF-8"
LC_ALL=ja_JP.UTF-8

このうちのどれかを設定すればよさげ。でも、特定するのはぶっちゃけ面倒なので、「$ LC_ALL=C」で解決してしまいました。
こんな感じ。

$ LC_ALL=C sar -A > output

ちゃんとkSarでグラフ化できました。