Kibana: Gráficos de llamas

Creado en 31 ene. 2018  ·  3Comentarios  ·  Fuente: elastic/kibana

Los gráficos de llama pueden resultar útiles para visualizar el resultado de una herramienta de creación de perfiles:
http://www.brendangregg.com/flamegraphs.html
https://github.com/brendangregg/FlameGraph

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

Recuerdo charlar con @danielmitterdorfer sobre esto hace un tiempo. Sería interesante pensar en cómo los datos de creación de perfiles se pueden almacenar en Elasticsearch y visualizar en una visualización nativa de Kibana como esta.

cc: @alexfrancoeur @thomasneirynck

New Vis KibanaApp discuss

Comentario más útil

Un enfoque de visualización muy interesante del equipo de Netflix Perf, Flamescope

image

Esta herramienta hace que sea fácil distinguir patrones y aparecer en la vista de gráfico de llamas con granularidad de subsegundos.

El eje X es el tiempo (t) en segundos, el eje Y es la división en milisegundos de t. El vector que produce la densidad de color del mapa de calor es el recuento de eventos para ese tiempo X-> Y.

Todos 3 comentarios

Llevo queriendo almacenamiento de perfiles desde siempre. Ahora que estoy en Elastic, pensé en hacer algo al respecto. Empecé con un nuevo Beat que reúne perfiles pprof : https://github.com/axw/pprofbeat.

(Esta es mi primera incursión real en ES y Beats, por lo que el formato de datos probablemente no sea excelente, pero es algo).

Me preocupo principalmente por la generación de perfiles de los programas Go, que es bastante sencillo: importa un paquete estándar y puedes exponer la CPU y los datos del perfil del montón a través de un punto final HTTP. Lo que quiero ver es:

  • creación de perfiles periódica (realizada por pprofbeat; se requerirían otros ritmos para la creación de perfiles en la máquina, es decir, "perf" y amigos)
  • Visualizaciones de Kibana, con la capacidad de comparar perfiles (por ejemplo, para ver cuánta memoria ha crecido con el tiempo o cómo se ve el perfil de la CPU en varios niveles de carga)

Tenía la intención de incorporar la interfaz de usuario web "pprof" como un complemento, aunque realmente no sé por dónde empezar. No hace falta decir que cuanto más integrado, mejor.

Algunas capturas de pantalla de la interfaz de usuario web pprof a continuación, en caso de que la gente no lo sepa, pueden servir de inspiración.

Ejemplo de gráfico pprof:
image

Pprof flamegraph:
image

Principales infractores de Pprof:
image

Anotación del código fuente de Pprof:
image

Un enfoque de visualización muy interesante del equipo de Netflix Perf, Flamescope

image

Esta herramienta hace que sea fácil distinguir patrones y aparecer en la vista de gráfico de llamas con granularidad de subsegundos.

El eje X es el tiempo (t) en segundos, el eje Y es la división en milisegundos de t. El vector que produce la densidad de color del mapa de calor es el recuento de eventos para ese tiempo X-> Y.

Me he tomado la libertad de crear una nueva solicitud de tipo de visualización en Elastic Charts https://github.com/elastic/elastic-charts/issues/519 para iniciar la conversación con ese equipo y para hacer una evaluación calificada sobre el seguimiento una implementación de MVP para APM y lo que eso debería implicar.

¿Fue útil esta página
0 / 5 - 0 calificaciones