Kibana: Flammendiagramme

Erstellt am 31. Jan. 2018  ·  3Kommentare  ·  Quelle: elastic/kibana

Flammendiagramme können nützlich sein, um die Ausgabe eines Profilerstellungstools zu visualisieren:
http://www.brendangregg.com/flamegraphs.html
https://github.com/brendangregg/FlameGraph

screen shot 2018-01-30 at 4 42 17 pm

Ich erinnere mich, dass ich vor einiger Zeit mit gechattet habe . Wäre interessant zu überlegen, wie Profiling-Daten in Elasticsearch gespeichert und in einer nativen Kibana-Visualisierung wie dieser visualisiert werden können.

cc: @alexfrancoeur @thomasneirynck

New Vis KibanaApp discuss

Hilfreichster Kommentar

Ein sehr interessanter Visualisierungsansatz vom Netflix Perf-Team Flamescope

image

Dieses Werkzeug macht es einfach, Muster zu unterscheiden und in der Flammendiagrammansicht in Subsekunden-Granularität zu erscheinen.

Die X-Achse ist die Zeit (t) in Sekunden, die Y-Achse ist der Millisekunden-Split von t. Der Vektor, der die Farbdichte der Heatmap erzeugt, ist die Ereignisanzahl für diese X->Y-Zeit.

Alle 3 Kommentare

Ich wollte schon seit Ewigkeiten Profiling-Speicher. Jetzt, wo ich bei Elastic bin, dachte ich, ich würde tatsächlich etwas dagegen tun. Ich habe mit einem neuen Beat begonnen, der pprof- Profile sammelt: https://github.com/axw/pprofbeat.

(Dies ist mein erster richtiger Ausflug in ES und Beats, daher ist das Datenformat wahrscheinlich nicht großartig - aber es ist etwas.)

Ich kümmere mich hauptsächlich um die Profilerstellung von Go-Programmen, was ziemlich einfach ist: Importieren Sie ein Standardpaket, und Sie können CPU- und Heap-Profildaten über einen HTTP-Endpunkt bereitstellen. Was ich sehen möchte ist:

  • periodisches Profiling (durch pprofbeat; andere Beats wären für das Profiling auf der Maschine erforderlich, dh "perf" und Freunde)
  • Kibana-Visualisierungen mit der Möglichkeit, Profile zu vergleichen (z. B. um zu sehen, wie viel Speicher im Laufe der Zeit gewachsen ist oder wie das CPU-Profil bei verschiedenen Laststufen aussieht)

Ich hatte vor, die Web-Benutzeroberfläche von "pprof" als Plugin einzubetten, obwohl ich nicht wirklich weiß, wo ich anfangen soll. Unnötig zu sagen, je integrierter, desto besser.

Ein paar Screenshots der pprof Web-Benutzeroberfläche unten, falls die Leute es nicht wissen - könnten als Inspiration dienen.

Beispiel pprof-Grafik:
image

Pprof Flammengraph:
image

Pprof Top-Täter:
image

Anmerkung zum Pprof-Quellcode:
image

Ein sehr interessanter Visualisierungsansatz vom Netflix Perf-Team Flamescope

image

Dieses Werkzeug macht es einfach, Muster zu unterscheiden und in der Flammendiagrammansicht in Subsekunden-Granularität zu erscheinen.

Die X-Achse ist die Zeit (t) in Sekunden, die Y-Achse ist der Millisekunden-Split von t. Der Vektor, der die Farbdichte der Heatmap erzeugt, ist die Ereignisanzahl für diese X->Y-Zeit.

Ich habe mir erlaubt, in Elastic Charts https://github.com/elastic/elastic-charts/issues/519 eine neue Visualisierungstyp-Anfrage zu erstellen, um die Konversation mit diesem Team zu eröffnen und eine qualifizierte Bewertung der Weiterverfolgung vorzunehmen eine MVP-Implementierung für APM und was das beinhalten sollte.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen