(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Linux】kSarを利用時に文字化けでエラーとなる

スポンサーリンク

事象

性能情報を取得結果であるsarファイルを可視化するツール、kSarにてsarを読み込んだ際に以下のように文字化けでエラーとなる。

unable to parse time 18譎?46蛻?01遘?
環境情報
  • kSar7 (alpha)
  • RedHatEnterpriseLinux 7.8
  • Windows 10 (Cygwin)

原因/解決策

該当ファイルの文字コードが以下のようになっているので

$ file sarfile
sarfile: UTF-8 Unicode text

ASCIIに変換することで

$ cat sarfile | nkf -s > sarfile_s
$ file sarfile_s
sars27: Non-ISO extended-ASCII text

読み込み時エラーを解消する。

以下、補足です。

補足

該当のsarファイルをheadコマンドで見てみると

$ head sarfile
Linux 3....el7.x86_64 (instance-1)         20XX-XX-XX      _x86_64_        (2 CPU)

12時34分45秒       LINUX RESTART
12時35分01秒     CPU      %usr     %nice      %sys   %iowait    %steal      %irq     %soft    %guest    %gnice     %idle
12時35分11秒     all      6.36      0.00      0.67      0.36      0.00      0.00      0.00      0.00      0.00     92.62
...

形式が確認できます。

Ksarをjavaコマンドから起動し

$ /cygdrive/c/Program\ Files/Java/jre/bin/java -jar kSar-7.0.0-alpha2.jar

日付情報と「yyyy-mm-dd」時間データを「hh時mm分ss秒」をKsarのOptionから以下のように指定します。
f:id:mtiit:20200728152832p:plain

この状態でsarファイルを「Data」 >「Load from file...」にてsarファイルを選択するとデータが表示されるはずですが以下が標準出力に出力されました。

unable to parse time 18譎?46蛻?01遘?
...

この文字化けは「時」や「分」の文字コードが認識できていない模様なのでsar自体の文字コードを変換することで対応しました。
また、文字化けが起きない半角英数である「x時y分z秒」を「x:y:z」に置換する方針でも対応可能です。

以上、ご参考になれば幸いです。