User Tools

Site Tools


apuntes:calidad

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
apuntes:calidad [2021/03/06 21:48] – [SonarQube] Santiago Faciapuntes:calidad [2021/03/07 21:40] (current) – [JConsole] Santiago Faci
Line 11: Line 11:
 === Máquina virtual con SonarQube === === Máquina virtual con SonarQube ===
  
-Para comenzar a trabajar con SonarQube primero debemos contar con la herramienta instalada. Es una aplicación web que debe ser instalada en alguna máquina dentro de la red de forma que todos los desarrolladores tengan acceso a ella.+Para comenzar a trabajar con [[https://www.sonarqube.org/|SonarQube]] primero debemos contar con la herramienta instalada. Es una aplicación web que debe ser instalada en alguna máquina dentro de la red de forma que todos los desarrolladores tengan acceso a ella.
  
 La instalación puede ser un tanto complicada pero nosotros contaremos con una máquina virtual que ya viene con la herramienta instalado y lista para usar. Asi, descargaremos la [[https://bitnami.com/stack/sonarqube/virtual-machine|Máquina virtual con SonarQube de Bitnami]] y la importaremos desde [[https://www.virtualbox.org|VirtualBox]]. La instalación puede ser un tanto complicada pero nosotros contaremos con una máquina virtual que ya viene con la herramienta instalado y lista para usar. Asi, descargaremos la [[https://bitnami.com/stack/sonarqube/virtual-machine|Máquina virtual con SonarQube de Bitnami]] y la importaremos desde [[https://www.virtualbox.org|VirtualBox]].
Line 21: Line 21:
 <caption>Máquina virtual de Bitnami con SonarQube</caption> <caption>Máquina virtual de Bitnami con SonarQube</caption>
 </figure> </figure>
 +
 +A continuación veremos los pasos que se han de seguir para poner en marcha la máquina virtual de Sonarqube:
 +
 +{{ youtube>qh0UWUndgpk }}\\
  
 ==== Configurar Maven con SonarQube ==== ==== Configurar Maven con SonarQube ====
Line 103: Line 107:
 <caption>Issues en el código del proyecto</caption> <caption>Issues en el código del proyecto</caption>
 </figure> </figure>
 +
 +{{ youtube>GNo0aNPiBOg }}
 +
 +==== Revisar el análisis de código y corregir defectos en el código ====
 +
 +A partir del análisis de código que queda registrado en SonarQube, podemos ver cuáles son los defectos que tiene nuestro código en general (//Overall//) y también tras el último análisis realizado, con el objetivo de corregirlos en el proyecto para mejorar la calidad del mismo.
 +
 +{{ youtube>1CMikzmbtjk }}
  
 ==== Integrar SonarQube con Jenkins ==== ==== Integrar SonarQube con Jenkins ====
Line 117: Line 129:
 {{ jconsole.png?100 }} {{ jconsole.png?100 }}
 </figure> </figure>
 +
 +[[https://docs.oracle.com/javase/10/management/using-jconsole.htm#JSMGM-GUID-77416B38-7F15-4E35-B3D1-34BFD88350B5|JConsole]] es una herramienta de las conocidas como APM (Application Performance Monitoring) tools, puesto que permite monitorizar la ejecución de aplicaciones Java.
 +
 +Permite monitorizar multitud de aspectos en aplicaciones Java locales y remotas: uso de CPU, memoria utilizada, hilos en ejecución, . . . y también realizar volcados de memoria del Heap de Java.
  
 === Ejecutar JConsole === === Ejecutar JConsole ===
 +
 +Viene disponible "de serie" con cualquier versión de JDK por lo que para instalarla solamente debemos ejecutar el comando ''jconsole'' desde la consola:
  
 <code bash> <code bash>
Line 150: Line 168:
 </figure> </figure>
  
-[[https://visualvm.github.io/|VisualVM]]+[[https://visualvm.github.io/|VisualVM]] es otra herramienta de las conocidas como APM (Application Performance Monitoring) tools, puesto que permite monitorizar la ejecución de aplicaciones Java.
  
 +Permite monitorizar multitud de aspectos en aplicaciones Java locales y remotas: uso de CPU, memoria utilizada, hilos en ejecución, . . . y también realizar volcados de memoria del Heap de Java.
  
 <figure> <figure>
 {{ visualvm-monitor.png }} {{ visualvm-monitor.png }}
-<caption>Monitor de memoria (Tomcat)</caption>+<caption>Monitor de CPU, memoria (Heap), carga de clases e hilos en ejecución</caption>
 </figure> </figure>
  
Line 162: Line 181:
 <caption>Hilos de ejecución (Tomcat) </caption> <caption>Hilos de ejecución (Tomcat) </caption>
 </figure> </figure>
 +
 +A continuación, en el siguiente video se puede ver como iniciar la monitorización de un aplicación local Java y algunos aspectos importantes a tener en cuenta sobre la misma que ayudará a interpretar los datos y gráficos que muestra la aplicación:
 +
 +{{ youtube>8BS4mcr_5QM }}\\
 +
 +==== Memory Analyzer ====
 +
 +{{ mat.png?200 }}
 +
 +https://www.eclipse.org/mat/
  
 ---- ----
apuntes/calidad.1615067307.txt.gz · Last modified: 2021/03/06 21:48 by Santiago Faci