Escaneo Sonar Qube

1. Descargar e instalar el SONARQUBE y descomprimir en el disco C:


2. Instalar el JDK 11, SonarQube 8.4 requiere la versión 11

3. Para levantar el servidor ubicarse en la carpeta /bin y ejecutar Startsonar.bat

 -> Wrapper Started as Console

Launching a JVM...

Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org

  Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.

 

2020.08.02 16:43:58 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory C:\sonarqube-8.4.1.35646\temp

2020.08.02 16:43:58 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on /127.0.0.1:9001

2020.08.02 16:43:59 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [C:\sonarqube-8.4.1.35646\elasticsearch]: C:\Program Files\Java\jdk-11.0.8\bin\java -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -XX:-OmitStackTraceInFastThrow -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Djava.io.tmpdir=C:\sonarqube-8.4.1.35646\temp -XX:ErrorFile=../logs/es_hs_err_pid%p.log -Xmx512m -Xms512m -XX:+HeapDumpOnOutOfMemoryError -Delasticsearch -Des.path.home=C:\sonarqube-8.4.1.35646\elasticsearch -Des.path.conf=C:\sonarqube-8.4.1.35646\temp\conf\es -cp lib/* org.elasticsearch.bootstrap.Elasticsearch

2020.08.02 16:43:59 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running

Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.

2020.08.02 16:44:01 INFO  app[][o.e.p.PluginsService] no modules loaded

2020.08.02 16:44:01 INFO  app[][o.e.p.PluginsService] loaded plugin [org.elasticsearch.transport.Netty4Plugin]

2020.08.02 16:44:31 INFO  app[][o.s.a.SchedulerImpl] Process[es] is up

2020.08.02 16:44:31 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='web', ipcIndex=2, logFilenamePrefix=web]] from [C:\sonarqube-8.4.1.35646]: C:\Program Files\Java\jdk-11.0.8\bin\java -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djava.io.tmpdir=C:\sonarqube-8.4.1.35646\temp -XX:-OmitStackTraceInFastThrow --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError -Dhttp.nonProxyHosts=localhost|127.*|[::1] -cp ./lib/common/*;C:\sonarqube-8.4.1.35646\lib\jdbc\h2\h2-1.4.199.jar org.sonar.server.app.WebServer C:\sonarqube-8.4.1.35646\temp\sq-process12928861634097268395properties

2020.08.02 16:45:14 INFO  app[][o.s.a.SchedulerImpl] Process[web] is up

2020.08.02 16:45:14 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='ce', ipcIndex=3, logFilenamePrefix=ce]] from [C:\sonarqube-8.4.1.35646]: C:\Program Files\Java\jdk-11.0.8\bin\java -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djava.io.tmpdir=C:\sonarqube-8.4.1.35646\temp -XX:-OmitStackTraceInFastThrow --add-opens=java.base/java.util=ALL-UNNAMED -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError -Dhttp.nonProxyHosts=localhost|127.*|[::1] -cp ./lib/common/*;C:\sonarqube-8.4.1.35646\lib\jdbc\h2\h2-1.4.199.jar org.sonar.ce.app.CeServer C:\sonarqube-8.4.1.35646\temp\sq-process11299290818643899388properties

2020.08.02 16:45:32 INFO  app[][o.s.a.SchedulerImpl] Process[ce] is up

2020.08.02 16:45:32 INFO  app[][o.s.a.SchedulerImpl] SonarQube is up 

4. Ingresar a localhost:9000

Para escanear el código es necesario descargar e Instalar SonarScanner.

5. Descargar y descomprimir el sonar-scanner también en el C:


6. Crear un archivo sonar-project.properties en el mismo directorio donde se encuentra el codigo a escanear. (en este caso el código a escanear es essalud-iafas-siteds-ws)

7. El archivo sonar-project.properties, debe contener:

#must be unique in a given SonarQube instance

sonar.projectKey=essalud-iafas-siteds-ws

# --- optional properties ---

# defaults to project key

sonar.projectName=essalud-iafas-siteds-ws

# defaults to 'not provided'

sonar.projectVersion=1.0

# Path is relative to the sonar-project.properties file. Defaults to .

sonar.sources=d:/sonar_pruebas/essalud-iafas-siteds-ws

sonar.java.binaries=d:/sonar_pruebas/essalud-iafas-siteds-ws

sonar.java.source=11

sonar.languaje=java

# Encoding of the source code. Default is default system encoding

#sonar.sourceEncoding=UTF-8

8. Ejecuto el sonar-scanner.bat, desde la linea de comandos


9. Resultado de la ejecución, se ejecuto en forma satisfactoria


10. Con la direccion del dashboardUrl=http://localhost:9000/dashboard?id=essalud-iafas-siteds-ws, verificamos el resultado