2009-09-02 6 views
18

Ich bin auf der Suche nach einem Werkzeug, um eine Folge von Paketen für ein gleitendes Fenster Protokoll zu zeichnen. Es gibt viele Werkzeuge für mit horizontalen Linien Nachrichtensequenzdiagramme zeichnen, aber ich möchte in der Lage sein, die Linien diagonal zu ziehen, wie der im unteren Teil dieses Bildes:Werkzeug zum Zeichnen von Protokoll Sequenzdiagrammen

SYN,SYN+ACK,ACK example http://i32.tinypic.com/2lazp1k.jpg

Bitte geeignete Werkzeuge vorschlagen. Ich bin wahrscheinlich nur an kostenlosen interessiert, aber wenn Sie einen wirklich guten Vorschlag für einen Werbespot haben, können Sie das auch einschließen. zu starten, schnell zu erlernen und einfach zu bedienen

Antwort

24

mscgen dies tun können, mit der arcgradient Option. Dieser Code-Schnipsel wil den zweiten Teil Ihres Beispiel machen genau:

msc { 
    arcgradient=20; 

    client, server; 
    client => server [label="SYN"]; 
    server => client [label="SYN + ACK"]; 
    client => server [label="ACK"]; 
} 

Wenn Sie in der mscgen_js on line Demo diese Schnipsel kopieren und einfügen, werden Sie sehen.

+0

Ausgezeichnet, genau das, was ich wollte. – hlovdal

+0

Der Link hier ist jetzt sehr veraltet - es hat Version 0.2 der mscgen-Befehlszeile, die viele tolle Funktionen fehlt. Es gibt auch eine GUI-Version zum Erstellen von Diagrammen auf SourceForge. – Jason

+1

fwiw: - mscgens neueste Version ist 0,20; - mscgen_js (der andere Link) ist noch am Leben und tritt auch. – Sander

2

ich RFFlow versuchen finden sehr schnell zu sein. Es macht diagnostische Linien und Text an Hängen und ist gut für Blockdiagramme aller Art. Es speichert als EMF und WMF sowie GIF und seinen nativen Typ und kopiert Pasten in Word sehr schön.

6

Für alle anderen Benutzer gibt es ein cooles Befehlszeilenprogramm mscgen.

10

Ich habe websequencediagrams verwendet. Im Wesentlichen eine Webapp-Version von mscgen mit ein paar verschiedenen Fancy Renderern.

enter image description here

Websequencediagrams macht auch ihr Diagramm-Rendering als Script-API. Jetzt speichere ich meine Diagramme als HTML-Dateien, begehen sie git, zeigen schöne Diffs usw. Das heißt,

<html> 
<body> 
<div class="wsd" wsd_style="rose"><pre> 
App->set_state PAUSE 
<!-- your wsd diagram commands, etc... --> 
</pre></div> 
<script type="text/javascript" src="http://www.websequencediagrams.com/service.js"></script> 
</body> 
</html> 
+0

Dies ist ein cooles Tool - kennen Sie ein ähnliches Tool zur Visualisierung von Ereignissen auf einer Zeitskala - Ich habe über die Visualisierung nachgedacht, wenn verschiedene Threads auf einem einfachen Sequenzdiagramm miteinander beginnen und enden. Ich habe nur Zeit in einige Protokolldatei protokolliert, dann importieren Sie in Excel und haben es in einem Diagramm zeigen, aber wenn ich ein Werkzeug wie dieses finden könnte, wäre es so viel einfacher – serup

+1

Ich weiß nicht von einem Werkzeug so, aber es ist eine großartige Idee, Zeit hinzuzufügen, um Threading zu visualisieren. Es gibt mehr Sequenzdiagrammwerkzeuge, die auf dieser anderen Frage aufgeführt werden: http://stackoverflow.com/questions/6364672/drawing-sequence-diagrams. Aber ich habe sie kurz überflogen und es klingt nicht so, als enthielten sie Zeit. –

Verwandte Themen