jepsen-io / maelstrom

A workbench for writing toy implementations of distributed systems.
Eclipse Public License 1.0
3.03k stars 188 forks source link

Is it possible to produce maelstrom visualisations with results from a jepsen test? #13

Closed zackteo closed 3 years ago

zackteo commented 3 years ago

Hi Kyle, I managed to use Jepsen to do some simple tests on my distributed system.

And I was wondering if it is possible to use maelstrom on my Jepsen test results to produce some of visualisations here https://github.com/jepsen-io/maelstrom/blob/main/doc/results.md#common-files ?

zackteo commented 3 years ago

Whoops I forgot that the inclusion of checker will generate latency-raw.png latency-quantiles.png and timeline.html.

I guess messages.svg is only possible if maelstrom is used? 🤔

aphyr commented 3 years ago

Almost all of Maelstrom is stock Jepsen, so yeah, almost all visualizations are already available. The only one which isn't is messages.svg, which Jepsen can't generate without deep understanding of the wire protocols for the database being tested. jepsen.db/tcpdump can record message flows for you, and you can analyze them in wireshark, but that won't really get you to Lamport diagrams either. You'd need to write some kind of custom software for that, I think.