Sonar is showing 0% code coverage with QUnit/JavaScript but I'm seeing over 385 issues

I’m using SONARQUBE locally v. 8.8 and on our Jenkins Server v.7.9

I’ve created QUnit tests because we’re using AEM (Adobe Experience Manager) and they’ve tasked me with writing code coverage for “TWO” JavaScript functions to test this.

I have and it runs both in the terminal and browser with 100% success.

The code will be shown below.

BUT, when I run it online in Jenkins or locally with Sonar, the dashboard shows the following:

And the code issues are shown as below

image

What I am trying to achieve is getting COVERAGE to be greater than ZERO while there are 373 lines of code that show need coverage. I’m only doing two functions currently.

Here’s my set up…

image

This {test} folder resides in the same line as src/apps/

Here’s my code for QUNIT in a file called: header.js

"use strict";
// Zipcode Module
QUnit.module("Send to VPP");

var zipcodevalue = '98237'; // Change this value for testing

QUnit.test("Should validate that the zip code going in is valid", function (assert) {
    zipToVppTestCase.call(this, {
        assert: assert,
        zipcodevalue: '98237',
        expected: "Success"
    });
    // QUnit.assert.equal(zipcodevalue, '98237', 'string value and hard code value are equal', (callback) => {
    //     callback(zipcodevalue);    
    // });
});

function zipToVppTestCase() {
    // Act

    // Assert
    // QUnit.equal(zipcodevalue, '98237', "Testing the Zip Code", function (assert) {
    if (isNaN(zipcodevalue === false)) {
        QUnit.assert.equal(zipcodevalue, '98237', 'string value and hard code value are NOT equal', (callback) => {
            callback(zipcodevalue);
        });
    } else {
        QUnit.assert.equal(zipcodevalue, '98237', 'string value and hard code value are equal', (callback) => {
            callback(zipcodevalue);
        });
        // ok(true);
    }

    // });

}

// Email validation
QUnit.module('Validate Email');

var emailvalue = 'peter_borreggine@optum.com'; // Change this value for testing
var returnMsg = '';

QUnit.test("Should validate that the email going in is valid", function (assert) {
    validateEmail.call(this, {
        assert: assert,
        emailvalue: 'peter_borreggine@optum.com',
        expected: "Success"
    });
});

function validateEmail() {
    // Act

    // Assert
    // QUnit.equal(emailvalue, 'peter_borreggine@optum.com', "Testing the Email address", function (assert) {

    const re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

    if (re.test(String(emailvalue).toLowerCase())) {
        QUnit.assert.equal(emailvalue, 'peter_borreggine@optum.com', 'string value and hard code value are equal', (callback) => {
            callback(emailvalue);
        });
        // ok(true);
        returnMsg = 'valid email';
    } else {
        QUnit.assert.equal(emailvalue, 'peterborreggine@optum.com', 'string value and hard code value are NOT equal', (callback) => {
            callback(emailvalue);
        });
        // ok(false);
        returnMsg = 'invalid email';
    }

    return returnMsg;

    // });
}

Now here’s my index.html file for QUnit

<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title>QUnit Main Test Suite</title>
		<link data-require="qunit@*" data-semver="1.17.1" rel="stylesheet"
			href="http://code.jquery.com/qunit/qunit-1.17.1.css" />
		<script data-require="qunit@*" data-semver="1.17.1" src="http://code.jquery.com/qunit/qunit-1.17.1.js"></script>
		<script src="../require.js"></script>
		<script src="https://code.jquery.com/jquery-3.6.0.min.js"
			integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
		<script src="navigationClientLibs/js/header.js"></script>

	</head>

	<body>
		<div id="qunit"></div>
		<div id="qunit-fixture"></div>
		<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js"></script>
	</body>

</html>

Here’s the result in the browser:

Finally, here’s the code I’m covering in a folder up in the main code block section. QUnit suggests we MOCK the folder and name of the .js file in the test folder, which I did.

Here’s sendToVPP and then vaildateEmail.

function sendZipToVPP() {

    var zipcodevalue = $('#nav-zipcode').val();
    if (!($.isNumeric(zipcodevalue)) || zipcodevalue.length < 5) {
        $('#nav-zipcode').addClass('invalid').attr('aria-describedby', 'shop-fp-err').focus();
        $('#shop-fp-err').css({ "display": "block" });

        if (typeof _satellite !== 'undefined') {
            _satellite.track("globalheader_finderror");
        }
        return;
    } else if (countyResponse === null || typeof countyResponse === 'undefined') {
        $('#nav-zipcode').addClass('invalid').attr('aria-describedby', 'shop-fp-err').focus();
        $('#shop-fp-err').css({ "display": "block" });

        if (typeof _satellite !== 'undefined') {
            _satellite.track("globalheader_finderror");
        }
        return;
    } else {
        if (typeof _satellite !== 'undefined') {
            _satellite.track("globalheader");
        }
        $('#nav-zipcode').removeClass('invalid').removeAttr('aria-describedby');
        $('#shop-fp-err').css({ "display": "none" });
        var state = globalCommonUtilityService.getValueFromStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "geotrackingState");
        var zip = globalCommonUtilityService.getValueFromStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "geotrackingZip");
        var profileChatData = globalCommonUtilityService.getValueFromStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "profileUserChatData");
        var campaignCodeFromSession = globalCommonUtilityService.getValueFromStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "campaignCode");
        globalCommonUtilityService.clearEntireStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE);
        globalCommonUtilityService.setValueInStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "geotrackingState", state);
        globalCommonUtilityService.setValueInStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "geotrackingZip", zip);
        globalCommonUtilityService.setValueInStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "profileUserChatData", profileChatData);
        campaignCodeFromSession != null ? globalCommonUtilityService.setValueInStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "campaignCode", campaignCodeFromSession) : null;
        trackVPPData(zip);
        if (location.href.indexOf('/confirmation') > -1) {
            globalCommonUtilityService.setValueInStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "vppZipcode", $('#nav-zipcode').val());
            location.href = "/plns.html#/summary";
        }
        if ($.cookie) {
            $.removeCookie("locationSessionCookie");
        } else {
            $j.removeCookie("locationSessionCookie");
        }
        globalCommonUtilityService.setValueInStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "vppZipcode", $('#nav-zipcode').val());
        location.href = "/plan.html";
    }
}

and

function validateEmail(subnavType) {
    var subnavClass = $('.' + subnavType);
    var email = $(subnavClass).find('.menu-email-address').val();
    var emailErrorID = $(subnavClass).find('.email-error').attr('id');
    var errormsg = $(subnavClass).find('.email-error');
    var emailregex = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    var validemail = emailregex.test(String(email).toLowerCase());

    if (validemail) {
        $(subnavClass).find('.menu-email-address').removeAttr('aria-describedby');
        submitEmail(email, subnavClass);
        return;
    } else {
        $(subnavClass).find('.menu-email-address').attr('aria-describedby', emailErrorID);
        $(subnavClass).find('.menu-email-address').addClass('invalid').focus();
        $('.email-subscribe-form').addClass('errormsg-mobile-alignment');

        errormsg.show();

        if (typeof _satellite !== 'undefined') {
            _satellite.track("globalheader_emailsubmiterror");
        }
        return false;
    }
}

That’s pretty much it.

Here’s my sonar-project.properties file

sonar.host.url=http://localhost:9000
sonar.login=admin
sonar.language=js
sonar.password=************************
sonar.projectKey=apps
sonar.projectName=apps
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.sources=src/main/content/root
sonar.inclusions=src/main/content/root/**/*.js
sonar.exclusions=**/node_modules/**, src/main/content/jcr_root/*.jsp, src/main/content/jcr_root/*.java, src/main/content/jcr_root/*.html
sonar.tests=test/navigationClientLibs
sonar.test.inclusions=test
sonar.javascript.jstests.reportPaths=test
sonar.typescript.lcov.reportPaths=test/coverage/lcov.info
sonar.testExecutionReportPaths=${project.projectDir}/reports/ut_report.xml

Hope all this detail helps.

Thank you

Hello Pete,

I am not sure where you found it, but the property sonar.javascript.jstests.reportPaths does not exist. Also, the property sonar.typescript.lcov.reportPaths happens to be deprecated. You should use sonar.javascript.lcov.reportPaths instead.

Coming to your problem, if the dashboard shows zero, then either the path to your coverage file is incorrect, or the file is malformed, or it doesn’t exist. To verify that, would you mind sharing the scanner logs with the debug details? There might be some clues there as to why the coverage is not showing.

Regards,
Yassin

Yassin,

Thank you for your kind reply.

Here’s my updated sonar-project.props file

sonar.host.url=http://localhost:9000
sonar.login=admin
sonar.language=js
sonar.password=*****************************
sonar.projectKey=ui.apps
sonar.projectName=ui.apps
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.sources=src/main/content/jcr_root
sonar.inclusions=src/main/content/jcr_root/**/*.js
sonar.exclusions=**/node_modules/**, src/main/content/jcr_root/acquisiton-aem-global-components/*.jsp, src/main/content/jcr_root/acquisiton-aem-global-components/*.java, src/main/content/jcr_root/acquisiton-aem-global-components/*.html
sonar.tests=test/navigationClientLibs
sonar.test.inclusions=test
sonar.javascript.lcov.reportPaths=coverage/lcov.info
sonar.testExecutionReportPaths=${project.projectDir}/reports/ut_report.xml
sonar.core.codeCoveragePlugin=jacoco
sonar.coverage.jacoco.xmlReportPaths=${project.buildDir}/reports/jacoco.xml

Now for the log…

> sonar-scanner

[08:47:54] Starting analysis...
[08:47:54] Checking if executable exists: C:\Users\pborregg\.sonar\native-sonar-scanner\sonar-scanner-4.4.0.2170-windows\bin\sonar-scanner.bat
[08:47:54] Platform binaries for SonarScanner found. Using it.
INFO: Scanner configuration file: C:\Users\pborregg\.sonar\native-sonar-scanner\sonar-scanner-4.4.0.2170-windows\bin\..\conf\sonar-scanner.properties
INFO: Project root configuration file: C:\Users\pborregg\repos\wwwroot\acqustn-aem-global-comps\ui.apps\sonar-project.properties 
INFO: SonarScanner 4.4.0.2170
INFO: Java 11.0.3 AdoptOpenJDK (64-bit)
INFO: Windows 10 10.0 amd64
INFO: User cache: C:\Users\pborregg\.sonar\cache
INFO: Scanner configuration file: C:\Users\pborregg\.sonar\native-sonar-scanner\sonar-scanner-4.4.0.2170-windows\bin\..\conf\sonar-scanner.properties
INFO: Project root configuration file: C:\Users\pborregg\repos\wwwroot\acqustn-aem-global-comps\ui.apps\sonar-project.properties 
INFO: Analyzing on SonarQube server 8.8.0
INFO: Default locale: "en_US", source code encoding: "UTF-8"
INFO: Load global settings
INFO: Load global settings (done) | time=668ms
INFO: Server id: BF41A1F2-AXipQa1Yrhzjl2BjY2ng
INFO: User cache: C:\Users\pborregg\.sonar\cache
INFO: Load/download plugins
INFO: Load plugins index
INFO: Load plugins index (done) | time=588ms
INFO: Load/download plugins (done) | time=788ms
INFO: Process project properties
INFO: Process project properties (done) | time=17ms
INFO: Execute project builders
INFO: Execute project builders (done) | time=5ms
INFO: Project key: ui.apps
INFO: Base dir: C:\Users\pborregg\repos\wwwroot\acqustn-aem-global-comps\ui.apps
INFO: Working dir: C:\Users\pborregg\repos\wwwroot\acqustn-aem-global-comps\ui.apps\.scannerwork
INFO: Load project settings for component key: 'ui.apps'
INFO: Load project settings for component key: 'ui.apps' (done) | time=629ms
INFO: Load quality profiles
INFO: Load quality profiles (done) | time=870ms
INFO: Load active rules
INFO: Load active rules (done) | time=13660ms
INFO: Indexing files...
INFO: Project configuration:
INFO:   Included sources: src/main/content/jcr_root/**/*.js
INFO:   Excluded sources: **/node_modules/**, src/main/content/jcr_root/global-components/*.jsp, src/main/content/jcr_root/acquisiton-aem-global-components/*.java, src/main/content/jcr_root/acquisiton-aem-global-components/*.html, test        
INFO:   Included tests: test
INFO: Load project repositories
INFO: Load project repositories (done) | time=907ms
INFO: 63 files indexed
INFO: 226 files ignored because of inclusion/exclusion patterns
INFO: 0 files ignored because of scm ignore settings
INFO: Quality profile for js: Sonar way
INFO: ------------- Run sensors on module ui.apps
INFO: Load metrics repository
INFO: Load metrics repository (done) | time=620ms
INFO: Sensor CSS Rules [cssfamily]
INFO: No CSS, PHP, HTML or VueJS files are found in the project. CSS analysis is skipped.
INFO: Sensor CSS Rules [cssfamily] (done) | time=3ms
INFO: Sensor JaCoCo XML Report Importer [jacoco]
WARN: No coverage report can be found with sonar.coverage.jacoco.xmlReportPaths='/reports/jacoco.xml'. Using default locations: target/site/jacoco/jacoco.xml,target/site/jacoco-it/jacoco.xml,build/reports/jacoco/test/jacocoTestReport.xml
INFO: No report imported, no coverage information will be imported by JaCoCo XML Report Importer
INFO: Sensor JaCoCo XML Report Importer [jacoco] (done) | time=20ms
INFO: Sensor JavaScript analysis [javascript]
INFO: 63 source files to be analyzed
INFO: 2/63 files analyzed, current file: src/main/content/jcr_root/apps/aglobal-components/components/content/navigation/rteclientlib-authoring/clientlib/WhitespaceProcessor.js
INFO: 28/63 files analyzed, current file: src/main/content/jcr_root/etc/designs/global-components/globalHeaderClientLibs/js/globalheader.js
INFO: 63/63 source files have been analyzed
INFO: Sensor JavaScript analysis [javascript] (done) | time=102129ms
INFO: Sensor JavaScript/TypeScript Coverage [javascript]
WARN: No coverage information will be saved because LCOV file cannot be found.
WARN: Provided LCOV file path: coverage/lcov.info. Seek file with path: C:\Users\pborregg\repos\wwwroot\global-comps\ui.apps\coverage\lcov.info
**WARN: No coverage information will be saved because all LCOV files cannot be found.**
INFO: Sensor JavaScript/TypeScript Coverage [javascript] (done) | time=20ms
INFO: Sensor C# Project Type Information [csharp]
INFO: Sensor C# Project Type Information [csharp] (done) | time=3ms
INFO: Sensor C# Properties [csharp]
INFO: Sensor C# Properties [csharp] (done) | time=5ms
INFO: Sensor JavaXmlSensor [java]
INFO: Sensor JavaXmlSensor [java] (done) | time=4ms
INFO: Sensor HTML [web]
INFO: Sensor HTML [web] (done) | time=9ms
INFO: Sensor VB.NET Project Type Information [vbnet]
INFO: Sensor VB.NET Project Type Information [vbnet] (done) | time=2ms
INFO: Sensor VB.NET Properties [vbnet]
INFO: Sensor VB.NET Properties [vbnet] (done) | time=9ms
INFO: Sensor Generic Test Executions Report
INFO: Parsing C:\Users\pborregg\repos\wwwroot\global-comps\ui.apps\reports\ut_report.xml
INFO: Imported test execution data for 0 files
INFO: Test execution data ignored for 1 unknown files, including:
../test/navigationClientLibs/js/header.js
INFO: Sensor Generic Test Executions Report (done) | time=189ms
INFO: ------------- Run sensors on project
INFO: Sensor Zero Coverage Sensor
INFO: Sensor Zero Coverage Sensor (done) | time=317ms
INFO: SCM Publisher SCM provider for this project is: git
INFO: SCM Publisher 62 source files to be analyzed
INFO: SCM Publisher 61/62 source files have been analyzed (done) | time=8335ms
WARN: Missing blame information for the following files:
WARN:   * src/main/content/jcr_root/etc/designs/global-components/navigationClientLibs/js/header.js
WARN: This may lead to missing/broken features in SonarQube
INFO: CPD Executor 2 files had no CPD blocks
INFO: CPD Executor Calculating CPD for 61 files
INFO: CPD Executor CPD calculation finished (done) | time=1099ms
INFO: Analysis report generated in 1400ms, dir size=1 MB
INFO: Analysis report compressed in 1658ms, zip size=465 KB
INFO: Analysis report uploaded in 809ms
INFO: ANALYSIS SUCCESSFUL, you can browse http://localhost:9000/dashboard?id=ui.apps
INFO: Note that you will be able to access the updated dashboard once the server has processed the submitted analysis report     
INFO: More about the report processing at http://localhost:9000/api/ce/task?id=AXrUD4gCjJEY-njIQhJo
INFO: Analysis total time: 2:59.807 s
INFO: ------------------------------------------------------------------------
INFO: EXECUTION SUCCESS
INFO: ------------------------------------------------------------------------
INFO: Total time: 3:03.939s
INFO: Final Memory: 13M/57M
INFO: ------------------------------------------------------------------------
[08:51:00] Analysis finished.

Is that what you seek?

There are no debug logs unless they are under the sonar directory

C:\Users\pborregg\AppData\Roaming\npm-cache_logs\ but when Sonar is running correctly, no logs are created

Oh, found some logs under the LOGS folder D’oh!

2021.07.23 04:00:01 WARN  app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1073807364
2021.07.23 04:00:01 INFO  app[][o.s.a.SchedulerImpl] Process[es] is stopped
2021.07.23 04:00:02 INFO  app[][o.s.a.SchedulerImpl] Process[ce] is stopped
--> 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.

2021.07.23 08:36:17 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp
2021.07.23 08:36:17 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on [HTTP: 127.0.0.1:9001, TCP: 127.0.0.1:57604]
2021.07.23 08:36:17 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\elasticsearch]: C:\Program Files\AdoptOpenJDK\jdk-11.0.9.11-hotspot\bin\java -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp -XX:ErrorFile=../logs/es_hs_err_pid%p.log -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 -Dio.netty.allocator.numDirectArenas=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Djava.locale.providers=COMPAT -Xmx512m -Xms512m -XX:MaxDirectMemorySize=256m -XX:+HeapDumpOnOutOfMemoryError -Delasticsearch -Des.path.home=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\elasticsearch -Des.path.conf=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp\conf\es -cp lib/* org.elasticsearch.bootstrap.Elasticsearch
2021.07.23 08:36:17 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
2021.07.23 08:36:56 INFO  app[][o.s.a.SchedulerImpl] Process[es] is up
2021.07.23 08:36:56 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='web', ipcIndex=2, logFilenamePrefix=web]] from [C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792]: C:\Program Files\AdoptOpenJDK\jdk-11.0.9.11-hotspot\bin\java -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djava.io.tmpdir=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\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:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\lib\jdbc\h2\h2-1.4.199.jar org.sonar.server.app.WebServer C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp\sq-process7466053933331766333properties
2021.07.23 08:37:37 INFO  app[][o.s.a.SchedulerImpl] Process[web] is up
2021.07.23 08:37:37 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='ce', ipcIndex=3, logFilenamePrefix=ce]] from [C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792]: C:\Program Files\AdoptOpenJDK\jdk-11.0.9.11-hotspot\bin\java -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djava.io.tmpdir=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp -XX:-OmitStackTraceInFastThrow --add-opens=java.base/java.util=ALL-UNNAMED -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError -Dhttp.nonProxyHosts=localhost|127.*|[::1] -cp ./lib/common/*;C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\lib\jdbc\h2\h2-1.4.199.jar org.sonar.ce.app.CeServer C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp\sq-process2594995795783837838properties
2021.07.23 08:37:44 INFO  app[][o.s.a.SchedulerImpl] Process[ce] is up
2021.07.23 08:37:44 INFO  app[][o.s.a.SchedulerImpl] SonarQube is up

and this one
web.log

2021.07.23 04:00:03 INFO  web[][o.s.p.ProcessEntryPoint] Hard stopping process
2021.07.23 04:00:04 WARN  web[][o.s.p.ProcessEntryPoint$HardStopperThread] Can not stop in 1000ms
2021.07.23 04:00:04 WARN  web[][o.s.s.a.EmbeddedTomcat] Failed to stop web server
org.apache.catalina.LifecycleException: A child container failed during stop
	at org.apache.catalina.core.ContainerBase.stopInternal(ContainerBase.java:997)
	at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
	at org.apache.catalina.core.StandardService.stopInternal(StandardService.java:486)
	at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
	at org.apache.catalina.core.StandardServer.stopInternal(StandardServer.java:787)
	at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
	at org.apache.catalina.startup.Tomcat.stop(Tomcat.java:450)
	at org.sonar.server.app.EmbeddedTomcat.terminate(EmbeddedTomcat.java:112)
	at org.sonar.server.app.WebServer.hardStop(WebServer.java:83)
	at org.sonar.process.ProcessEntryPoint$HardStopperThread.lambda$new$0(ProcessEntryPoint.java:219)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
2021.07.23 04:00:04 INFO  web[][o.s.s.n.NotificationDaemon] Notification service stopped
2021.07.23 08:36:59 INFO  web[][o.s.p.ProcessEntryPoint] Starting web
2021.07.23 08:37:00 INFO  web[][o.a.t.u.n.NioSelectorPool] Using a shared selector for servlet write/read
2021.07.23 08:37:02 INFO  web[][o.s.s.e.EsClientProvider] Connected to local Elasticsearch: [http://commontools-stg.uhc.com:9001]
2021.07.23 08:37:03 INFO  web[][o.s.s.p.LogServerVersion] SonarQube Server / 8.8.0.42792 / 8ea4b78e406a28fece1dbce33ae74e87c26f59ed
2021.07.23 08:37:05 INFO  web[][o.s.s.p.d.EmbeddedDatabase] Starting embedded database on port 9092 with url jdbc:h2:tcp://127.0.0.1:9092/sonar
2021.07.23 08:37:05 INFO  web[][o.s.s.p.d.EmbeddedDatabase] Embedded database started. Data stored in: C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\data
2021.07.23 08:37:05 INFO  web[][o.sonar.db.Database] Create JDBC data source for jdbc:h2:tcp://127.0.0.1:9092/sonar
2021.07.23 08:37:06 WARN  web[][o.s.db.dialect.H2] H2 database should be used for evaluation purpose only.
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerFileSystemImpl] SonarQube home: C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792
2021.07.23 08:37:08 INFO  web[][o.s.s.u.SystemPasscodeImpl] System authentication by passcode is disabled
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin C# Code Quality and Security / 8.19.0.28253 / 43bcae4fd8532e1edd55c8e7af3357431bbd7240
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin CSS Code Quality and Security / 1.4.0.1899 / 00c77dfd101c06a6181f0c3f024957a42eba9b8e
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin Flex Code Quality and Security / 2.6.0.2294 / 64746e0c588ddd44f3216ae1ee02a01bcf6b2dac
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin Go Code Quality and Security / 1.8.2.1946 / e5d905c22abff18761b80fa66a2d92c2aeb6dcf7
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin HTML Code Quality and Security / 3.3.0.2534 / 18c0ca03dae915ebe9bc9bd71345b3290db1d5a5
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin JaCoCo / 1.1.0.898 / f65b288e6c2888393bd7fb72ad7ac1425f88eebf
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin Java Code Quality and Security / 6.14.0.25463 / b79132dcad3a5774922be73bdfbf455fdb8a66ff
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin JavaScript/TypeScript Code Quality and Security / 7.3.0.15071 / 62d9b763a54933850abed9c51c088e5c456fe963
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin Kotlin Code Quality and Security / 1.8.2.1946 / e5d905c22abff18761b80fa66a2d92c2aeb6dcf7
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin PHP Code Quality and Security / 3.16.0.7320 / 20c2a2e768cf58fffb17816091f4c8f333bd2d1e
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin Python Code Quality and Security / 3.4.0.7980 / ed304c18d2838aa56be0f734e975c497c56bb534
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin Ruby Code Quality and Security / 1.8.2.1946 / e5d905c22abff18761b80fa66a2d92c2aeb6dcf7
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin Scala Code Quality and Security / 1.8.2.1946 / e5d905c22abff18761b80fa66a2d92c2aeb6dcf7
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin VB.NET Code Quality and Security / 8.19.0.28253 / 43bcae4fd8532e1edd55c8e7af3357431bbd7240
2021.07.23 08:37:08 INFO  web[][o.s.s.p.ServerPluginManager] Deploy plugin XML Code Quality and Security / 2.1.0.2861 / b718c01f1720379b8080d16437de4d9198a84683
2021.07.23 08:37:11 WARN  web[][o.a.c.u.SessionIdGeneratorBase] Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [430] milliseconds.
2021.07.23 08:37:11 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.platform.web.WebServiceFilter@389af8b6 [pattern=UrlPattern{inclusions=[/api/system/migrate_db.*, ...], exclusions=[/api/components/update_key, ...]}]
2021.07.23 08:37:12 INFO  web[][o.s.s.a.EmbeddedTomcat] HTTP connector enabled on port 9000
2021.07.23 08:37:13 INFO  web[][o.s.s.p.UpdateCenterClient] Update center: https://update.sonarsource.org/update-center.properties (no proxy)
2021.07.23 08:37:15 INFO  web[][o.s.s.s.LogServerId] Server ID: BF41A1F2-AXipQa1Yrhzjl2BjY2ng
2021.07.23 08:37:16 WARN  web[][o.s.s.a.LogOAuthWarning] For security reasons, OAuth authentication should use HTTPS. You should set the property 'Administration > Configuration > Server base URL' to a HTTPS URL.
2021.07.23 08:37:16 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/plugins/download
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/permissions/search_templates
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/list_bitbucketserver_projects
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/check_pat
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/list_azure_projects
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/search_bitbucketserver_repos
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/search_azure_repos
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/list_github_organizations
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/list_github_repositories
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_integrations/get_github_client_id
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_settings/get_binding
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_settings/list
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_settings/list_definitions
2021.07.23 08:37:17 WARN  web[][o.s.a.s.w.WebService$Action] The response example is not set on action api/alm_settings/validate
2021.07.23 08:37:17 INFO  web[][o.s.s.t.TelemetryDaemon] Sharing of SonarQube statistics is enabled.
2021.07.23 08:37:17 INFO  web[][o.s.s.n.NotificationDaemon] Notification service started (delay 60 sec.)
2021.07.23 08:37:17 INFO  web[][o.s.s.a.p.ExpiredSessionsCleaner] Purge of expired session tokens has removed 1 elements
2021.07.23 08:37:17 INFO  web[][o.s.s.a.p.ExpiredSessionsCleaner] Purge of expired SAML message ids has removed 0 elements
2021.07.23 08:37:17 INFO  web[][o.s.s.s.GeneratePluginIndex] Generate scanner plugin index
2021.07.23 08:37:17 INFO  web[][o.s.s.s.RegisterPlugins] Register plugins
2021.07.23 08:37:17 INFO  web[][o.s.s.s.RegisterMetrics] Register metrics
2021.07.23 08:37:17 INFO  web[][o.s.s.r.RegisterRules] Register rules
2021.07.23 08:37:31 INFO  web[][o.s.s.q.BuiltInQProfileRepositoryImpl] Load quality profiles
2021.07.23 08:37:33 INFO  web[][o.s.s.q.RegisterQualityProfiles] Register quality profiles
2021.07.23 08:37:33 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile css/Sonar way
2021.07.23 08:37:33 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile scala/Sonar way
2021.07.23 08:37:33 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile jsp/Sonar way
2021.07.23 08:37:33 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile kotlin/Sonar way
2021.07.23 08:37:34 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile go/Sonar way
2021.07.23 08:37:34 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile js/Sonar way
2021.07.23 08:37:34 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile js/Sonar way Recommended
2021.07.23 08:37:34 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile py/Sonar way
2021.07.23 08:37:34 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile ruby/Sonar way
2021.07.23 08:37:34 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile cs/Sonar way
2021.07.23 08:37:35 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile java/Sonar way
2021.07.23 08:37:35 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile web/Sonar way
2021.07.23 08:37:35 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile xml/Sonar way
2021.07.23 08:37:35 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile flex/Sonar way
2021.07.23 08:37:35 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile php/Sonar way
2021.07.23 08:37:35 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile php/PSR-2
2021.07.23 08:37:35 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile php/Drupal
2021.07.23 08:37:36 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile vbnet/Sonar way
2021.07.23 08:37:36 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile ts/Sonar way
2021.07.23 08:37:36 INFO  web[][o.s.s.q.RegisterQualityProfiles] Update profile ts/Sonar way recommended
2021.07.23 08:37:36 INFO  web[][o.s.s.s.RegisterPermissionTemplates] Register permission templates
2021.07.23 08:37:36 INFO  web[][o.s.s.s.RenameDeprecatedPropertyKeys] Rename deprecated property keys
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.platform.web.SonarLintConnectionFilter@1877521c [pattern=UrlPattern{inclusions=[/api/*], exclusions=[]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.platform.web.WebServiceFilter@48ea5fe1 [pattern=UrlPattern{inclusions=[/api/issues/delete_comment.*, ...], exclusions=[/api/authentication/login.*, ...]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.platform.web.WebServiceReroutingFilter@331588a5 [pattern=UrlPattern{inclusions=[/api/components/bulk_update_key, ...], exclusions=[]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.authentication.DefaultAdminCredentialsVerifierFilter@145a3349 [pattern=UrlPattern{inclusions=[/*], exclusions=[*.css, ...]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.authentication.InitFilter@5fa9a6b7 [pattern=UrlPattern{inclusions=[/sessions/init/*], exclusions=[]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.authentication.OAuth2CallbackFilter@7e248f7c [pattern=UrlPattern{inclusions=[/oauth2/callback/*], exclusions=[]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.authentication.ResetPasswordFilter@779913c8 [pattern=UrlPattern{inclusions=[/*], exclusions=[*.css, ...]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.authentication.ws.LoginAction@569fe5c4 [pattern=UrlPattern{inclusions=[/api/authentication/login], exclusions=[]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.authentication.ws.LogoutAction@10192e19 [pattern=UrlPattern{inclusions=[/api/authentication/logout], exclusions=[]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.authentication.ws.ValidateAction@28546c12 [pattern=UrlPattern{inclusions=[/api/authentication/validate], exclusions=[]}]
2021.07.23 08:37:36 INFO  web[][o.s.s.q.ProjectsInWarningDaemon] Counting number of projects in warning is not started as there are no projects in this situation.
2021.07.23 08:37:36 INFO  web[][o.s.s.p.p.PlatformLevelStartup] Running Community Edition
2021.07.23 08:37:36 INFO  web[][o.s.s.p.Platform] WebServer is operational

and this one
es.log

2021.07.23 08:36:30 INFO  es[][o.e.n.Node] version[7.11.2], pid[13572], build[unknown/unknown/3e5a16cfec50876d20ea77b075070932c6464c7d/2021-03-06T05:54:38.141101Z], OS[Windows 10/10.0/amd64], JVM[AdoptOpenJDK/OpenJDK 64-Bit Server VM/11.0.9/11.0.9+11]
2021.07.23 08:36:30 INFO  es[][o.e.n.Node] JVM home [C:\Program Files\AdoptOpenJDK\jdk-11.0.9.11-hotspot]
2021.07.23 08:36:30 INFO  es[][o.e.n.Node] JVM arguments [-XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -Djava.io.tmpdir=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp, -XX:ErrorFile=../logs/es_hs_err_pid%p.log, -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, -Dio.netty.allocator.numDirectArenas=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.locale.providers=COMPAT, -Xmx512m, -Xms512m, -XX:MaxDirectMemorySize=256m, -XX:+HeapDumpOnOutOfMemoryError, -Delasticsearch, -Des.path.home=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\elasticsearch, -Des.path.conf=C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792\temp\conf\es]
2021.07.23 08:36:32 INFO  es[][o.e.p.PluginsService] loaded module [analysis-common]
2021.07.23 08:36:32 INFO  es[][o.e.p.PluginsService] loaded module [lang-painless]
2021.07.23 08:36:32 INFO  es[][o.e.p.PluginsService] loaded module [parent-join]
2021.07.23 08:36:32 INFO  es[][o.e.p.PluginsService] loaded module [percolator]
2021.07.23 08:36:32 INFO  es[][o.e.p.PluginsService] loaded module [transport-netty4]
2021.07.23 08:36:32 INFO  es[][o.e.p.PluginsService] no plugins loaded
2021.07.23 08:36:32 INFO  es[][o.e.e.NodeEnvironment] using [1] data paths, mounts [[OS (C:)]], net usable_space [96.2gb], net total_space [237.2gb], types [NTFS]
2021.07.23 08:36:32 INFO  es[][o.e.e.NodeEnvironment] heap size [494.9mb], compressed ordinary object pointers [true]
2021.07.23 08:36:34 INFO  es[][o.e.n.Node] node name [sonarqube], node ID [N4fJBLq_RjahPyxDEuxOUg], cluster name [sonarqube], roles [master, remote_cluster_client, data, ingest]
2021.07.23 08:36:44 INFO  es[][o.e.t.NettyAllocator] creating NettyAllocator with the following configs: [name=unpooled, suggested_max_allocation_size=1mb, factors={es.unsafe.use_unpooled_allocator=null, g1gc_enabled=false, g1gc_region_size=0b, heap_size=494.9mb}]
2021.07.23 08:36:44 INFO  es[][o.e.d.DiscoveryModule] using discovery type [zen] and seed hosts providers [settings]
2021.07.23 08:36:44 INFO  es[][o.e.g.DanglingIndicesState] gateway.auto_import_dangling_indices is disabled, dangling indices will not be automatically detected or imported and must be managed manually
2021.07.23 08:36:45 INFO  es[][o.e.n.Node] initialized
2021.07.23 08:36:45 INFO  es[][o.e.n.Node] starting ...
2021.07.23 08:36:46 INFO  es[][o.e.t.TransportService] publish_address {127.0.0.1:57604}, bound_addresses {127.0.0.1:57604}
2021.07.23 08:36:47 INFO  es[][o.e.c.c.Coordinator] cluster UUID [wRg-Y8AtR-K1taTpbCYhng]
2021.07.23 08:36:47 INFO  es[][o.e.c.s.MasterService] elected-as-master ([1] nodes joined)[{sonarqube}{N4fJBLq_RjahPyxDEuxOUg}{Vx7lShXwQki3VJbhG-CPlg}{127.0.0.1}{127.0.0.1:57604}{dimr}{rack_id=sonarqube} elect leader, _BECOME_MASTER_TASK_, _FINISH_ELECTION_], term: 30, version: 683, delta: master node changed {previous [], current [{sonarqube}{N4fJBLq_RjahPyxDEuxOUg}{Vx7lShXwQki3VJbhG-CPlg}{127.0.0.1}{127.0.0.1:57604}{dimr}{rack_id=sonarqube}]}
2021.07.23 08:36:48 INFO  es[][o.e.c.s.ClusterApplierService] master node changed {previous [], current [{sonarqube}{N4fJBLq_RjahPyxDEuxOUg}{Vx7lShXwQki3VJbhG-CPlg}{127.0.0.1}{127.0.0.1:57604}{dimr}{rack_id=sonarqube}]}, term: 30, version: 683, reason: Publication{term=30, version=683}
2021.07.23 08:36:48 INFO  es[][o.e.h.AbstractHttpServerTransport] publish_address {127.0.0.1:9001}, bound_addresses {127.0.0.1:9001}
2021.07.23 08:36:48 INFO  es[][o.e.n.Node] started
2021.07.23 08:36:48 INFO  es[][o.e.g.GatewayService] recovered [7] indices into cluster_state
2021.07.23 08:36:56 INFO  es[][o.e.c.r.a.AllocationService] Cluster health status changed from [RED] to [GREEN] (reason: [shards started [[metadatas][0]]]).

and this one
ce.log

2021.07.23 04:00:01 INFO  ce[][o.s.p.ProcessEntryPoint] Hard stopping process
2021.07.23 04:00:01 INFO  ce[][o.s.ce.app.CeServer] Compute Engine is stopping...
2021.07.23 04:00:01 INFO  ce[][o.s.c.t.CeProcessingSchedulerImpl] Hard stopping workers...
2021.07.23 04:00:02 INFO  ce[][o.s.ce.app.CeServer] Compute Engine is stopped
2021.07.23 08:37:38 INFO  ce[][o.s.p.ProcessEntryPoint] Starting ce
2021.07.23 08:37:38 INFO  ce[][o.s.ce.app.CeServer] Compute Engine starting up...
2021.07.23 08:37:39 INFO  ce[][o.s.s.e.EsClientProvider] Connected to local Elasticsearch: [http://commontools-stg.uhc.com:9001]
2021.07.23 08:37:39 INFO  ce[][o.sonar.db.Database] Create JDBC data source for jdbc:h2:tcp://127.0.0.1:9092/sonar
2021.07.23 08:37:40 WARN  ce[][o.s.db.dialect.H2] H2 database should be used for evaluation purpose only.
2021.07.23 08:37:41 INFO  ce[][o.s.s.p.ServerFileSystemImpl] SonarQube home: C:\Users\pborregg\repos\wwwroot\sonarqube-8.8.0.42792\sonarqube-8.8.0.42792
2021.07.23 08:37:42 INFO  ce[][o.s.c.c.CePluginRepository] Load plugins
2021.07.23 08:37:44 INFO  ce[][o.s.c.c.ComputeEngineContainerImpl] Running Community edition
2021.07.23 08:37:44 INFO  ce[][o.s.ce.app.CeServer] Compute Engine is operational
2021.07.23 08:37:46 INFO  ce[][o.s.c.t.CeWorkerImpl] worker AXrUA-uhHN6AOPBErdIf found no pending task (including indexation task). Disabling indexation task lookup for this worker until next SonarQube restart.
2021.07.23 08:46:56 INFO  ce[][o.s.c.t.CeWorkerImpl] Execute task | project=ui.apps | type=REPORT | id=AXrUDFFdjJEY-njIQhJn | submitter=admin
2021.07.23 08:46:56 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Extract report | status=SUCCESS | time=53ms
2021.07.23 08:46:56 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist scanner context | status=SUCCESS | time=14ms
2021.07.23 08:46:56 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Propagate analysis warnings from scanner report | status=SUCCESS | time=1ms
2021.07.23 08:46:56 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Generate analysis UUID | status=SUCCESS | time=0ms
2021.07.23 08:46:57 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Load analysis metadata | status=SUCCESS | time=146ms
2021.07.23 08:46:57 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Initialize | status=SUCCESS | time=0ms
2021.07.23 08:46:57 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Build tree of components | components=1 | status=SUCCESS | time=56ms
2021.07.23 08:46:57 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Validate project | status=SUCCESS | time=12ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Load quality profiles | status=SUCCESS | time=2675ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Load Quality gate | status=SUCCESS | time=34ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Load new code period | status=SUCCESS | time=22ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Detect file moves | reportFiles=0 | status=SUCCESS | time=0ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Load duplications | duplications=0 | status=SUCCESS | time=2ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute cross project duplications | status=SUCCESS | time=0ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute size measures | status=SUCCESS | time=7ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute new coverage | status=SUCCESS | time=6ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute coverage measures | status=SUCCESS | time=2ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute comment measures | status=SUCCESS | time=1ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Copy custom measures | status=SUCCESS | time=7ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute duplication measures | status=SUCCESS | time=1ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute size measures on new code | status=SUCCESS | time=1ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute language distribution | status=SUCCESS | time=13ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute test measures | status=SUCCESS | time=2ms
2021.07.23 08:46:59 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute complexity measures | status=SUCCESS | time=2ms
2021.07.23 08:47:00 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Load measure computers | status=SUCCESS | time=3ms
2021.07.23 08:47:00 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute Quality Profile status | status=SUCCESS | time=57ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Execute component visitors | status=SUCCESS | time=1013ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Checks executed after computation of measures | status=SUCCESS | time=1ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute Quality Gate measures | status=SUCCESS | time=25ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Compute Quality profile measures | status=SUCCESS | time=3ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Generate Quality profile events | status=SUCCESS | time=13ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Generate Quality gate events | status=SUCCESS | time=19ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Check upgrade possibility for not analyzed code files. | status=SUCCESS | time=3ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist components | status=SUCCESS | time=181ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist analysis | status=SUCCESS | time=8ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist analysis properties | status=SUCCESS | time=14ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist measures | inserts=32 | status=SUCCESS | time=45ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist live measures | insertsOrUpdates=53 | status=SUCCESS | time=55ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist duplication data | insertsOrUpdates=0 | status=SUCCESS | time=2ms
2021.07.23 08:47:01 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist new ad hoc Rules | status=SUCCESS | time=0ms
2021.07.23 08:47:02 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist issues | cacheSize=516 KB | inserts=0 | updates=577 | merged=0 | status=SUCCESS | time=1266ms
2021.07.23 08:47:02 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist project links | status=SUCCESS | time=13ms
2021.07.23 08:47:02 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist events | status=SUCCESS | time=15ms
2021.07.23 08:47:02 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist sources | status=SUCCESS | time=13ms
2021.07.23 08:47:02 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Persist cross project duplications | status=SUCCESS | time=0ms
2021.07.23 08:47:02 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Enable analysis | status=SUCCESS | time=57ms
2021.07.23 08:47:02 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Update last usage date of quality profiles | status=SUCCESS | time=0ms
2021.07.23 08:47:05 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Purge db | status=SUCCESS | time=2155ms
2021.07.23 08:47:07 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Index analysis | status=SUCCESS | time=2646ms
2021.07.23 08:47:07 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Update need issue sync for branch | status=SUCCESS | time=6ms
2021.07.23 08:47:07 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Send issue notifications | newIssuesNotifs=0 | newIssuesDeliveries=0 | myNewIssuesNotifs=0 | myNewIssuesDeliveries=0 | changesNotifs=0 | changesDeliveries=0 | status=SUCCESS | time=10ms
2021.07.23 08:47:07 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Publish task results | status=SUCCESS | time=1ms
2021.07.23 08:47:07 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.s.ComputationStepExecutor] Trigger refresh of Portfolios and Applications | status=SUCCESS | time=0ms
2021.07.23 08:47:07 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Webhooks | globalWebhooks=0 | projectWebhooks=0 | status=SUCCESS | time=19ms
2021.07.23 08:47:07 INFO  ce[AXrUDFFdjJEY-njIQhJn][o.s.c.t.CeWorkerImpl] Executed task | project=ui.apps | type=REPORT | id=AXrUDFFdjJEY-njIQhJn | submitter=admin | status=SUCCESS | time=11602ms
2021.07.23 08:50:25 INFO  ce[][o.s.c.t.CeWorkerImpl] Execute task | project=ui.apps | type=REPORT | id=AXrUD4gCjJEY-njIQhJo | submitter=admin
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Extract report | status=SUCCESS | time=3235ms
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist scanner context | status=SUCCESS | time=13ms
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Propagate analysis warnings from scanner report | status=SUCCESS | time=16ms
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Generate analysis UUID | status=SUCCESS | time=0ms
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Load analysis metadata | status=SUCCESS | time=9ms
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Initialize | status=SUCCESS | time=0ms
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Build tree of components | components=108 | status=SUCCESS | time=147ms
2021.07.23 08:50:29 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Validate project | status=SUCCESS | time=9ms
2021.07.23 08:50:31 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Load quality profiles | status=SUCCESS | time=2514ms
2021.07.23 08:50:31 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Load Quality gate | status=SUCCESS | time=30ms
2021.07.23 08:50:31 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Load new code period | status=SUCCESS | time=16ms
2021.07.23 08:50:31 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Detect file moves | reportFiles=63 | dbFiles=0 | addedFiles=63 | status=SUCCESS | time=17ms
2021.07.23 08:50:32 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Load duplications | duplications=125 | status=SUCCESS | time=161ms
2021.07.23 08:50:32 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute cross project duplications | status=SUCCESS | time=0ms
2021.07.23 08:50:32 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute size measures | status=SUCCESS | time=192ms
2021.07.23 08:50:33 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute new coverage | status=SUCCESS | time=1378ms
2021.07.23 08:50:33 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute coverage measures | status=SUCCESS | time=246ms
2021.07.23 08:50:33 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute comment measures | status=SUCCESS | time=17ms
2021.07.23 08:50:33 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Copy custom measures | status=SUCCESS | time=6ms
2021.07.23 08:50:33 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute duplication measures | status=SUCCESS | time=78ms
2021.07.23 08:50:33 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute size measures on new code | status=SUCCESS | time=36ms
2021.07.23 08:50:34 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute language distribution | status=SUCCESS | time=191ms
2021.07.23 08:50:34 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute test measures | status=SUCCESS | time=2ms
2021.07.23 08:50:34 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute complexity measures | status=SUCCESS | time=19ms
2021.07.23 08:50:34 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Load measure computers | status=SUCCESS | time=0ms
2021.07.23 08:50:34 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute Quality Profile status | status=SUCCESS | time=44ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Execute component visitors | status=SUCCESS | time=8158ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Checks executed after computation of measures | status=SUCCESS | time=0ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute Quality Gate measures | status=SUCCESS | time=38ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Compute Quality profile measures | status=SUCCESS | time=6ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Generate Quality profile events | status=SUCCESS | time=6ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Generate Quality gate events | status=SUCCESS | time=15ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Check upgrade possibility for not analyzed code files. | status=SUCCESS | time=0ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist components | status=SUCCESS | time=171ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist analysis | status=SUCCESS | time=6ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist analysis properties | status=SUCCESS | time=6ms
2021.07.23 08:50:42 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist measures | inserts=51 | status=SUCCESS | time=34ms
2021.07.23 08:50:49 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist live measures | insertsOrUpdates=5962 | status=SUCCESS | time=6816ms
2021.07.23 08:50:49 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist duplication data | insertsOrUpdates=0 | status=SUCCESS | time=228ms
2021.07.23 08:50:49 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist new ad hoc Rules | status=SUCCESS | time=0ms
2021.07.23 08:50:52 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist issues | cacheSize=490 KB | inserts=0 | updates=577 | merged=0 | status=SUCCESS | time=2649ms
2021.07.23 08:50:52 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist project links | status=SUCCESS | time=6ms
2021.07.23 08:50:52 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist events | status=SUCCESS | time=9ms
2021.07.23 08:50:54 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist sources | status=SUCCESS | time=2411ms
2021.07.23 08:50:54 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Persist cross project duplications | status=SUCCESS | time=0ms
2021.07.23 08:50:54 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Enable analysis | status=SUCCESS | time=45ms
2021.07.23 08:50:55 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Update last usage date of quality profiles | status=SUCCESS | time=16ms
2021.07.23 08:50:55 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Purge db | status=SUCCESS | time=115ms
2021.07.23 08:50:57 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Index analysis | status=SUCCESS | time=2424ms
2021.07.23 08:50:57 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Update need issue sync for branch | status=SUCCESS | time=7ms
2021.07.23 08:50:57 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Send issue notifications | newIssuesNotifs=0 | newIssuesDeliveries=0 | myNewIssuesNotifs=0 | myNewIssuesDeliveries=0 | changesNotifs=0 | changesDeliveries=0 | status=SUCCESS | time=8ms
2021.07.23 08:50:57 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Publish task results | status=SUCCESS | time=0ms
2021.07.23 08:50:57 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.s.ComputationStepExecutor] Trigger refresh of Portfolios and Applications | status=SUCCESS | time=0ms
2021.07.23 08:50:57 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Webhooks | globalWebhooks=0 | projectWebhooks=0 | status=SUCCESS | time=6ms
2021.07.23 08:50:58 INFO  ce[AXrUD4gCjJEY-njIQhJo][o.s.c.t.CeWorkerImpl] Executed task | project=ui.apps | type=REPORT | id=AXrUD4gCjJEY-njIQhJo | submitter=admin | status=SUCCESS | time=33234ms

Hey Pete,

Thank you, the first logs you shared are enough :slight_smile:. If you look into them carefully, you can see that the scanner failed to retrieve your coverage report file:

INFO: Sensor JavaScript/TypeScript Coverage [javascript]
WARN: No coverage information will be saved because LCOV file cannot be found.
WARN: Provided LCOV file path: coverage/lcov.info. Seek file with path: C:\Users\pborregg\repos\wwwroot\global-comps\ui.apps\coverage\lcov.info
**WARN: No coverage information will be saved because all LCOV files cannot be found.**
INFO: Sensor JavaScript/TypeScript Coverage [javascript] (done) | time=20ms

Is this path C:\Users\pborregg\repos\wwwroot\global-comps\ui.apps\coverage\lcov.info correct ? Does the file really exist at this location ? My guess is that you need to adjust the path you specified with the property sonar.javascript.lcov.reportPaths.

Hope this helps,
Yassin

OMG!!! YES! The COVERAGE folder does not exist and never gets created! Can I make it manually and can I put a template into the lcov.info file to kick things off? I’m so close and this is my remaining blocker.

Also, in my code coverage for QUnit, which works, the file I need to cover is under the test/navigationClientLibs/js/header.js file. Everything is above.

That all works, but I need to have SONAR read that header.js file as this is a JAVASCRIPT only project and there are no .spec.ts files just the .js QUnit modules.

I cannot figure out why the coverage folder is not working.

THANK YOU SO MUCH

Yassin,

So I built a ut_reports.xml and after some fiddling with the path, I’m starting to get what I believe is the key to this whole thing.

report refers to a file which is not configured as a test file: header.js

ERROR: Error during SonarScanner execution
ERROR: Error during parsing of generic test execution report 'C:\Users\pborregg\repos\wwwroot\global-comps\ui.apps\reports\ut_report.xml'. Look at the SonarQube documentation to know the expected XML format.
ERROR: Caused by: Line 2 of report refers to a file which is not configured as a test file: src/main/content/jcr_root/etc/designs/global-components/navigationClientLibs/js/header.js

This is my ut_reports.xml

<testExecutions version="1">
    <file path="src/main/content/jcr_root/etc/designs/global-components/navigationClientLibs/js/header.js">
        <lineToCover lineNumber="45" covered="true"></lineToCover>
        <lineToCover lineNumber="79" covered="true"></lineToCover>
    </file>
</testExecutions>

Those two lines are to FUNCTIONS that I wrote in QUNIT. They are above

Yassin, anyone? I’m so close to resolving this…

Hey Pete, sorry for the delay.

OMG!!! YES! The COVERAGE folder does not exist and never gets created! Can I make it manually and can I put a template into the lcov.info file to kick things off? I’m so close and this is my remaining blocker.

You identified that the coverage report does not exist and never gets created. As explained by SonarQube coverage documentation, the scanner will not generate the report for you. Therefore, you need to either create it manually or include the necessary logic to your Jenkins pipeline so that it generates the coverage report before triggering an analysis.

So I built a ut_reports.xml and after some fiddling with the path, I’m starting to get what I believe is the key to this whole thing. report refers to a file which is not configured as a test file: header.js

I am not sure what you are trying to achieve here. Looking at your ut_reports.xml file, it seems that you are mixing coverage test data and execution test data. If you just want to import your code coverage to SonarQube, generating the lcov.info file and feeding it to the scanner with the corresponding property is enough. Could you clarify what you are trying to do here with this xml file ?

Yassin

Yassin,

Good news, so I’ve been a busy little bee and made Karma do the work for lcov.info. I’ve corrected a few issues and here’s what I did and what’s left

• Found some very interesting things and made certain adjustments to several files
• Adjusted the sonar-project.properties file to be like so:

sonar.host.url=http://localhost:9000
sonar.login=admin
sonar.language=js
sonar.password=*****************
sonar.projectKey=ui.apps
sonar.projectName=ui.apps
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.binaries=build/classes
sonar.tests=test/navigationClientLibs/js/header.spec.ts
sonar.sources=src/main/content/jcr_root
sonar.inclusions=**/*.spec.ts, **/*.js
sonar.exclusions=**/node_modules/**, **/*.ts, src/main/content/jcr_root/acquisiton-aem-global-components/*.jsp, src/main/content/jcr_root/acquisiton-aem-global-components/*.java, src/main/content/jcr_root/acquisiton-aem-global-components/*.html
sonar.tests=test/navigationClientLibs
sonar.test.inclusions=test
sonar.javascript.codeCoveragePlugin=lcov
sonar.javascript.lcov.reportPaths=coverage/lcov.info
sonar.testExecutionReportPaths=${project.projectDir}/reports/ut_report.xml
sonar.core.codeCoveragePlugin=jacoco
sonar.coverage.jacoco.xmlReportPaths=${project.buildDir}/reports/jacoco.xml

• Next, made adjustments to the karma.conf.js file like so

// Karma configuration
// Generated on Wed Jul 21 2021 15:11:21 GMT-0700 (Pacific Daylight Time)

module.exports = function (config) {
  const process = require('process');
  process.env.CHROME_BIN = require('puppeteer').executablePath();
  config.set({

    // base path that will be used to resolve all patterns (eg. files, exclude)
    basePath: '',

    // frameworks to use
    // available frameworks: https://npmjs.org/browse/keyword/karma-adapter
    frameworks: ['jasmine-jquery','jasmine'],

    plugins: [
      require('karma-jasmine'),
      // require('karma-chrome-launcher'),
      require('karma-phantomjs-launcher'),
      require('karma-jasmine-html-reporter'),
      require('karma-jasmine-jquery-2'),
      require('karma-coverage-istanbul-reporter'),
      require('@angular-devkit/build-angular/plugins/karma'),
      require('karma-sonarqube-unit-reporter')
    ],
    client: {
      clearContext: false // leave Jasmine Spec Runner output visible in browser
    },
    coverageIstanbulReporter: {
      dir: require('path').join(__dirname, './coverage/aem-global-comps'),
      reports: ['lcovonly', 'text-summary'],
      fixWebpackSourcePaths: true
    },
    // list of files / patterns to load in the browser
    files: [
      './src/main/content/jcr_root/etc/designs/acquisition-aem-global-components/**/*.js',
      './test/**/*.spec.ts'
    ],

    // list of files / patterns to exclude
    exclude: [
      '/**/*.ts',
      './src/main/content/jcr_root/etc/designs/acquisition-aem-global-components/acqGlobalLibs/**/*.js'
    ],

    // preprocess matching files before serving them to the browser
    // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor
    preprocessors: {
    },

    // test results reporter to use
    // possible values: 'dots', 'progress'
    // available reporters: https://npmjs.org/browse/keyword/karma-reporter
    reporters: ['progress', 'kjhtml', 'coverage-istanbul', 'sonarqubeUnit'],
    sonarQubeUnitReporter: {
      sonarQubeVersion: 'LATEST',
      outputFile: 'reports/ut_report.xml',
      overrideTestDescription: true,
      testPaths: ['./test/navigationClientLibs/'],
      testFilePattern: '.js',
      useBrowserName: false
    },

    // web server port
    port: 9876,

    // enable / disable colors in the output (reporters and logs)
    colors: true,

    // level of logging
    // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
    logLevel: config.LOG_INFO,

    // enable / disable watching file and executing tests whenever any file changes
    autoWatch: false,

    // start these browsers
    // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
    browsers: ['PhantomJS', 'PhantomJS_custom'],
    customLaunchers: {
      'PhantomJS_custom': {
        base: 'PhantomJS',
        options: {
          windowName: 'my-window',
          settings: {
            webSecurityEnabled: false
          },
        },
        flags: ['--load-images=true'],
        debug: true
      }
    },

    phantomjsLauncher: {
      // Have phantomjs exit if a ResourceError is encountered (useful if karma exits without killing phantom)
      exitOnResourceError: true
    },

    // Continuous Integration mode
    // if true, Karma captures browsers, runs the tests and exits
    singleRun: true,

    // Concurrency level
    // how many browser should be started simultaneous
    concurrency: Infinity
  })
}

• Next, I had to install a few more npm libraries
• So my package.json now looks like so:

{
  "name": "global-comps",
  "version": "1.0.0",
  "description": "This is for the Navigator",
  "main": "qunit.js",
  "scripts": {
    "lint": "eslint '**/*.js'",
    "test": "qunit",
    "compodoc": "npx compodoc -p tsconfig.doc.json",
    "ng": "ng",
    "clean": "rm -rf node*",
    "ng-cli": "npm install --no-optional @angular/cli",
    "start": "ng serve --proxy-config proxy.config.json",
    "build": "ng build",
    "prod": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --prod --output-hashing none && npm run test && npm run clean",
    "e2e": "ng e2e",
    "sonar": "sonar-scanner"
  },
  "repository": {
    "type": "git",
    "url": "************************************"
  },
  "author": "Peter Borreggine",
  "license": "MIT",
  "devDependencies": {
    "@types/jsdom": "^16.2.13",
    "grunt": "^1.3.0",
    "grunt-contrib-connect": "^3.0.0",
    "grunt-contrib-copy": "^1.0.0",
    "grunt-contrib-qunit": "^4.0.0",
    "grunt-git-authors": "^3.2.0",
    "grunt-search": "^0.1.8",
    "karma": "^6.3.2",
    "karma-chrome-launcher": "^3.1.0",
    "karma-coverage": "^2.0.3",
    "karma-coverage-istanbul-reporter": "^3.0.3",
    "karma-jasmine": "^4.0.1",
    "karma-jasmine-html-reporter": "^1.7.0",
    "karma-mocha-reporter": "^2.2.5",
    "karma-qunit": "^4.1.2",
    "karma-sonarqube-unit-reporter": "0.0.23",
    "karma-webpack": "^5.0.0",
    "sonar-scanner": "^3.1.0",
    "sonarqube-scanner": "~2.7.0"
  },
  "dependencies": {
    "@angular-devkit/build-angular": "^12.1.3",
    "@angular-devkit/build-webpack": "^0.1201.3",
    "JSONPath": "^0.11.2",
    "browserify": "^17.0.0",
    "common-js": "^0.3.8",
    "eslint-plugin-qunit": "^6.1.1",
    "jquery-browserify": "^1.8.1",
    "jsdom": "^16.5.3",
    "karma-jasmine-jquery-2": "^0.1.1",
    "karma-phantomjs-launcher": "^1.0.4",
    "npm-check-updates": "^11.5.13",
    "phantomjs": "^2.1.7",
    "qunit-reporter-junit": "^1.1.1",
    "qunit-reporter-lcov": "^1.0.2",
    "require": "^2.4.20"
  },
  "global": "window"
}

Finally, I was able to run the following command at the command prompt in git/bash

./node_modules/.bin/karma start karma.conf.js

• Then as I found issues with jQuery ($) I had to encapsulate all the errors for undefined $(document).ready(function()… with the following

(function ($) { <<<Added this wrapper
    $(document).ready(function () {	….
    });
})(jQuery); <<< Add this here to close

• This only will work AFTER you install the following npm module:
"karma-jasmine-jquery-2": “^0.1.1” by doing this: npm -I karma-jasmine-jquery-2
• Now I have two more errors to fix which are due to the fact that I’m only working with a snippet of the entire AEM package and that’s this:
• PhantomJS 2.1.1 (Windows 8) ERROR
• An error was thrown in afterAll
• ReferenceError: Can’t find variable: getValueFromStorage
• src/main/content/jcr_root/etc/designs/acquisition-aem-global-components/stickyActionMenuClientLibs/js/stickyActionMenu.js:20
• TypeError: null is not an object (evaluating ‘document.getElementById(“lastTouchSwitchCTYesOrNo”).value’) thrown
• PhantomJS 2.1.1 (Windows 8): Executed 0 of 0 ERROR (0 secs / 0 secs)
• PhantomJS 2.1.1 (Windows 8) ERROR
• An error was thrown in afterAll
• ReferenceError: Can’t find variable: getValueFromStorage
• src/main/content/jcr_root/etc/designs/global-components/stickyActionMenu/js/ActionMenu.js:20
• And finally, this:
• PhantomJS 2.1.1 (Windows 8): Executed 0 of 0 ERROR (0.267 secs / 0 secs)
• 26 07 2021 13:56:30.318:ERROR [karma-server]: UncaughtException: TypeError: Cannot read property ‘67836439’ of null
• at SonarQubeUnitReporter.onBrowserComplete (C:\Users\pborregg\repos\wwwroot\global-comps\apps\node_modules\karma-sonarqube-unit-reporter\index.js:121:23)
• at Server. (C:\Users\pborregg\repos\wwwroot\global-comps\ui.apps\node_modules\karma\lib\events.js:40:26)
• at Server.emit (events.js:323:22)
• at Browser.onComplete (C:\Users\pborregg\repos\wwwroot\global-comps\apps\node_modules\karma\lib\browser.js:94:20)
• at Socket. (C:\Users\pborregg\repos\wwwroot\global-comps\apps\node_modules\karma\lib\browser.js:216:44)
• at Socket.emit (events.js:311:20)
• at C:\Users\pborregg\repos\wwwroot\global-comps\apps\node_modules\socket.io\dist\socket.js:435:32
• at processTicksAndRejections (internal/process/task_queues.js:79:11)

Finally, the result from SONARQUBE

PhantomJS 2.1.1 (Windows 8) ERROR
  An error was thrown in afterAll
  ReferenceError: Can't find variable: getValueFromStorage
PhantomJS 2.1.1 (Windows 8): Executed 0 of 0 ERROR (0.029 secs / 0 secs)
PhantomJS 2.1.1 (Windows 8): Executed 0 of 0 ERROR (0.03 secs / 0 secs)

=============================== Coverage summary ===============================
Statements   : Unknown% ( 0/0 )
Branches     : Unknown% ( 0/0 )
Functions    : Unknown% ( 0/0 )
Lines        : Unknown% ( 0/0 )
================================================================================

=============================== Coverage summary ===============================
Statements   : Unknown% ( 0/0 )
Branches     : Unknown% ( 0/0 )
Functions    : Unknown% ( 0/0 )
PhantomJS 2.1.1 (Windows 8): Executed 0 of 0 ERROR (0.029 secs / 0 secs)
PhantomJS 2.1.1 (Windows 8): Executed 0 of 0 ERROR (0.267 secs / 0 secs)
26 07 2021 13:56:30.318:ERROR [karma-server]: UncaughtException: TypeError: Cannot read property '67836439' of null
    at SonarQubeUnitReporter.onBrowserComplete (C:\Users\pborregg\repos\wwwroot\acqustn-aem-global-comps\ui.apps\node_modules\karma-sonarqube-unit-reporter\index.js:121:23)

Here’s the code that is throwing the error getValueFromStorage

var campCode = globalCommonUtilityService.getValueFromStorage(globalCommonUtilityService.storageTypes.SESSIONSTORAGE, "campCode");

getValueFromStorage() is a function that is not being recognized as such. What I’m testing are SNIPPETS of the entire application which is not always there.

You see, we’re using Adobe Experience Manager and I’m to test JavaScript functions with ONLY PART of the entire app. That function appears in 92 results in 8 .js files meaning it’s used all over the place but in this one instance, I’m getting that error.

So that’s where I’m at so far. Almost there.

Thank you Yassin

I found a solution to the problem with Karma and code that comes up with UNDEFINED or NULL. Simply wrapped the code that cannot be found, like variables or functions, in a check of “typeOf” for NULL or UNDEFINED. Why? AEM is not holistic and comes in parts to us in branches. Hence, the missing functions and variable problem that is occurring.

Now I need to work on getting coverage with QUnit to appear in the coverage for SONARQUBE. That’s it now and I’m done. So, if you can assist me in that regard, I think we can wrap this up.

Here’s an example of what I did to overcome the Karma issue.

if (typeof someVariable !== 'undefined') {
.... some code
}

and

if (typeof someFunction !== 'null') {
.... some code
}

In this way, I cover if the function or variable exists or not.