Iperf: 簡単に解析できるリアルタイム出力オプション

作成日 2016年07月23日  ·  4コメント  ·  ソース: esnet/iperf

こんにちは
Powershellでiperf2のGUIを作成しました。
https://github.com/ili101/PPerf

iperf 3のサポートを追加したいのですが、iperf3には解析可能なリアルタイム出力オプションがありません

iperf2にはCSV出力があります
iperf 3にはJSON出力がありますが、これは最後に更新されるだけです

JSONはその構造のため、リアルタイム更新をサポートできないと思います。おそらく、最後にのみ更新する理由です。

CSVサポートなどの機能を追加できますか?

ありがとうございました

Help Wanted enhancement outputs

最も参考になるコメント

この機能も見たいです。 JSON構造はテストが終了するまでアセンブルできないことを理解しているので、代わりにレポート間隔ごとに最小限のJSONオブジェクトを用意しますか? または、下位互換性を容易にするためにcsvサポートを復活させます。

全てのコメント4件

テキスト出力を解析することができました
[ID]行のインデックス位置から始まる単語でデータをカットする
ただし、一部の行データがヘッダー位置の前に開始されることがあるという小さなバグがあります。

この例の合計と5.01〜5.01行のように

-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 127.0.0.1, port 63781
[  6] local 127.0.0.1 port 5201 connected to 127.0.0.1 port 64003
[ ID] Interval           Transfer     Bandwidth       Jitter    Lost/Total Datagrams
[  6]   0.00-1.01   sec   120 KBytes  0.98 Mbits/sec  0.136 ms  0/15 (0%)  
[  6]   1.01-2.01   sec   128 KBytes  1.05 Mbits/sec  0.137 ms  0/16 (0%)  
[  6]   2.01-3.01   sec   128 KBytes  1.05 Mbits/sec  0.169 ms  0/16 (0%)  
[  6]   3.01-4.01   sec   128 KBytes  1.05 Mbits/sec  0.126 ms  0/16 (0%)  
[  6]   4.01-5.01   sec   128 KBytes  1.04 Mbits/sec  0.113 ms  0/16 (0%)  
[  6]   5.01-5.01   sec  0.00 Bytes  0.00 Mbits/sec  0.113 ms  0/0 (0%)  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Jitter    Lost/Total Datagrams
[  6]   0.00-5.01   sec  0.00 Bytes  0.00 Mbits/sec  0.113 ms  0/79 (0%)  

一部の出力フィールドがおかしな方法で正当化されているのではないかと思います。 確かに、私はこれをまったく調べていません。

この出力を解析しようとする場合は、代わりに、行を(行の位置ではなく)ある程度の空白で区切られた「単語」に分割してみてください。 PerlまたはPythonの分割コマンドについて考えてみてください。それが私が想像していることです。

データ行をスペースで分割するのは難しいでしょう。なぜなら、「単語」をそこにある尊敬されるヘッダーに接続する必要があり、それらが混乱しないからです。
「0.00-1.01秒」は2ワードに分割されますが、実際には「間隔」である1つのセルデータです。

ヘッダー行の位置によってデータをセルにブレーキする(セル文字列で作業する)方が簡単です

マシンの読み取りの問題だけでなく、一部のデータが「画像テーブル」セルから出ており、他の行と並んでいないこともよくありません。

この機能も見たいです。 JSON構造はテストが終了するまでアセンブルできないことを理解しているので、代わりにレポート間隔ごとに最小限のJSONオブジェクトを用意しますか? または、下位互換性を容易にするためにcsvサポートを復活させます。

このページは役に立ちましたか?
0 / 5 - 0 評価