Iperf: leicht zu analysierende Echtzeit-Ausgabeoption

Erstellt am 23. Juli 2016  ·  4Kommentare  ·  Quelle: esnet/iperf

Hallo
Ich habe eine GUI für iperf 2 in Powershell erstellt:
https://github.com/ili101/PPerf

Ich möchte iperf 3-Unterstützung hinzufügen, aber iperf 3 verfügt nicht über eine analysierbare Echtzeit-Ausgabeoption

iperf 2 haben CSV-Ausgabe
iperf 3 hat JSON-Ausgabe, aber es werden nur am Ende aktualisiert

Ich glaube nicht, dass JSON aufgrund seiner Struktur Echtzeit-Updates unterstützen kann, wahrscheinlich, warum Sie es erst am Ende aktualisieren.

Können Sie CSV-Unterstützung oder ähnliches hinzufügen?

Vielen Dank

Help Wanted enhancement outputs

Hilfreichster Kommentar

Ich würde diese Funktion auch gerne sehen. Ich verstehe, dass die JSON-Struktur erst am Ende des Tests zusammengestellt werden kann. Haben Sie stattdessen möglicherweise ein minimales JSON-Objekt für jedes Berichtsintervall? Oder bringen Sie die CSV-Unterstützung für eine einfache Abwärtskompatibilität zurück.

Alle 4 Kommentare

Ich habe es geschafft, die Textausgabe zu analysieren
durch Schneiden der Daten durch die Wörter, die die Indexposition in der Zeile [ID] beginnen
Sie haben jedoch einen kleinen Fehler, dass einige der Zeilendaten manchmal vor der Kopfposition beginnen

wie die Zeilen total und 5.01-5.01 in diesem Beispiel

-----------------------------------------------------------
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%)  

Ich frage mich, ob einige der Ausgabefelder auf witzige Weise gerechtfertigt sind. Zugegeben, ich habe das überhaupt nicht untersucht.

Wenn ich versuchen würde, diese Ausgabe zu analysieren, könnte ich stattdessen versuchen, die Zeile in "Wörter" zu unterteilen, die durch ein Leerzeichen (und nicht durch die Position in der Zeile) getrennt sind. Denken Sie an die Perl- oder Python-Split-Befehle, das stelle ich mir vor.

Das Aufteilen der Datenzeile durch die Leerzeichen ist schwierig, da Sie dann die "Wörter" mit dem entsprechenden Header verbinden müssen und sie nicht bearbeitet werden.
"0,00-1,01 Sek." Wird in 2 Wörter aufgeteilt, aber es handelt sich tatsächlich um eine Zellendatei, die "Intervall" ist.

Das Bremsen der Daten an Zellen durch die Position der Kopfzeile (dann Arbeiten an der Zellenzeichenfolge) ist einfacher

Es ist nicht nur ein Problem beim maschinellen Lesen, es sieht auch nicht gut aus, dass einige der Daten aus der Zelle "Bildtabelle" stammen und auch nicht mit den anderen Zeilen übereinstimmen

Ich würde diese Funktion auch gerne sehen. Ich verstehe, dass die JSON-Struktur erst am Ende des Tests zusammengestellt werden kann. Haben Sie stattdessen möglicherweise ein minimales JSON-Objekt für jedes Berichtsintervall? Oder bringen Sie die CSV-Unterstützung für eine einfache Abwärtskompatibilität zurück.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

arainero picture arainero  ·  3Kommentare

FuzzyStatic picture FuzzyStatic  ·  13Kommentare

smcifrankp picture smcifrankp  ·  4Kommentare

michaelfranzl picture michaelfranzl  ·  9Kommentare

JodieChuang picture JodieChuang  ·  5Kommentare