Giter VIP home page Giter VIP logo

hygieia-build-jenkins-collector's Introduction

Due to lack of activity, this repo is currently not being supported and is archived as of 07/12/22. Please note since archival, the project is not maintained and will be available in a read-only state. Please reach out to [email protected] should you have any questions.

Configure the Jenkins Collector to display and monitor information (related to build status) on the Hygieia Dashboard, from Jenkins. Hygieia uses Spring Boot to package the collector as an executable JAR file with dependencies.

Table of Contents

Setup Instructions

To configure the Jenkins Collector, execute the following steps:

  • Step 1 - Artifact Preparation:

    Please review the two options in Step 1 to find the best fit for you.

    Option 1 - Download the artifact:

    You can download the SNAPSHOTs from the SNAPSHOT directory here or from the maven central repository here.

    Option 2 - Build locally:

    To configure the collector, git clone the collector repo. Then, execute the following steps:

    To package the collector source code into an executable JAR file, run the maven build from the \hygieia-build-jenkins-collector directory of your source code installation:

    mvn install

    The output file [collector name].jar is generated in the hygieia-build-jenkins-collector\target folder.

    Once you have chosen an option in Step 1, please proceed:

  • Step 2: Set Parameters in Application Properties File

Set the configurable parameters in the application.properties file to connect to the Dashboard MongoDB database instance, including properties required by the Jenkins Collector.

To configure parameters for the Jenkins Collector, refer to the sample application.properties section.

For information about sourcing the application properties file, refer to the Spring Boot Documentation.

  • Step 3: Deploy the Executable File

To deploy the [collector name].jar file, change directory to hygieia-build-jenkins-collector\target, and then execute the following from the command prompt:

java -jar [collector name].jar --spring.config.name=jenkins --spring.config.location=[path to application.properties file]

Sample Application Properties

# Database Name
dbname=dashboarddb

# Database HostName - default is localhost
dbhost=localhost

# Database Port - default is 27017
dbport=9999

# MongoDB replicaset
dbreplicaset=[false if you are not using MongoDB replicaset]
dbhostport=[host1:port1,host2:port2,host3:port3]

# Database Username - default is blank
dbusername=dashboarduser

# Database Password - default is blank
dbpassword=dbpassword

# Collector schedule (required)
jenkins.cron=0 0/5 * * * *

# The page size
jenkins.pageSize=1000

# The folder depth - default is 10
jenkins.folderDepth=10

# Jenkins server (required) - Can provide multiple
jenkins.servers[0]=http://jenkins.company.com

# If using username/token for API authentication
# (required for Cloudbees Jenkins Ops Center) For example,
jenkins.servers[1]=http://username:[email protected]

# Another option: If using same username/password Jenkins auth,
# set username/apiKey to use HTTP Basic Auth (blank=no auth)
jenkins.usernames[0]=
jenkins.apiKeys[0]=

# Determines if build console log is collected - defaults to false
jenkins.saveLog=true
		
# Search criteria enabled via properties (max search criteria = 2) 
jenkins.searchFields[0]= options.jobName
jenkins.searchFields[1]= niceName 

# Timeout values
jenkins.connectTimeout=20000
jenkins.readTimeout=20000

Run collector with Docker

You can install Hygieia by using a docker image from docker hub. This section gives detailed instructions on how to download and run with Docker.

  • Step 1: Download

    Navigate to the docker hub location of your collector here and download the latest image (most recent version is preferred). Tags can also be used, if needed.

  • Step 2: Run with Docker

    Docker run -e SKIP_PROPERTIES_BUILDER=true -v properties_location:/hygieia/config image_name

    • -e SKIP_PROPERTIES_BUILDER=true
      indicates whether you want to supply a properties file for the java application. If false/omitted, the script will build a properties file with default values
    • -v properties_location:/hygieia/config
      if you want to use your own properties file that located outside of docker container, supply the path here.
      • Example: -v /Home/User/Document/application.properties:/hygieia/config

hygieia-build-jenkins-collector's People

Contributors

alzafacon avatar amitmawkin avatar aochsner avatar audithawks avatar beasknees avatar benj58xu avatar chtompki avatar courtneyp123 avatar gonchalo620 avatar jimmylin avatar markrx avatar megha849 avatar mohdnisart avatar mpluya avatar nireesht avatar paruff avatar pxk5958 avatar rob-miller-777 avatar rvema avatar satheesh-balachandran avatar satishc1 avatar sbrenthughes avatar shriver135 avatar spennec avatar stevegal avatar virtualpeter avatar yamunag19 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hygieia-build-jenkins-collector's Issues

Error connecting to db:27017 (172.18.0.3:27017) :: caused by :: Connection refused

MongoDB shell version v4.2.0
connecting to: mongodb://db:27017/admin?compressors=disabled&gssapiServiceName=mongodb
2019-10-17T05:43:53.180+0000 E QUERY [js] Error: couldn't connect to server db:27017, connection attempt failed: SocketException: Error connecting to db:27017 (172.18.0.3:27017) :: caused by :: Connection refused :
connect@src/mongo/shell/mongo.js:341:17
@(connect):2:6
2019-10-17T05:43:53.186+0000 F - [main] exception: connect failed
2019-10-17T05:43:53.186+0000 E - [main] exiting with code 1

Service hygieia-jenkins-build-collector has neither an image nor a build context specified. At least one must be provided.

version: '3'
services:

api-audit:
# environment:

ui:
# environment:

appdynamics-collector:
# environment:

artifactory-artifact-collector:
# environment:

bamboo-build-collector:
# environment:

chat-ops-collector:
# environment:

hpsm-cmdb-collector:
# environment:

github-graphql-collector:
# environment:

gitlab-feature-collector:
# environment:

gitlab-scm-collector:
# environment:

hygieia-jenkins-build-collector:
environment:
- JENKINS_CRON=0 * * * * *
- JENKINS_MASTER=http://3.16.22.132:8080
- JENKINS_USERNAME=Dragon
- JENKINS_API_KEY=11df470af887b7e5051d7d22a79943ae59

jenkins-codequality-collector:
# environment:

I have this on override.yml but still it's failing.

Error:

ERROR: The Compose file is invalid because:
Service jira-collector has neither an image nor a build context specified. At least one must be provided.
[ec2-user@ip-172-31-16-167 Hygieia]$ docker-compose up -d
ERROR: The Compose file is invalid because:
Service hpsm-cmdb-collector has neither an image nor a build context specified. At least one must be provided.
[ec2-user@ip-172-31-16-167 Hygieia]$ docker-compose up -d
ERROR: The Compose file is invalid because:
Service nexus-iq-collector has neither an image nor a build context specified. At least one must be provided.
[ec2-user@ip-172-31-16-167 Hygieia]$ docker-compose up -d
ERROR: The Compose file is invalid because:
Service jenkins-codequality-collector has neither an image nor a build context specified. At least one must be provided.

Feature for Multiple Jobs Collection

Right now Hygieia, while we configure Team Dashboard, allow for only one Jenkins Job / GitHub Repo.
I've successfully done Hygieia 2.0 POC (version 3.1.2) - now demand from the developers is that, they should be able to configure multiple jobs/repos and get the aggregate stats in Product Dashboard

  1. Is there an initiative to have such collectors in Future?
  2. Is there a way, we can do this in present version?
  3. Any sample code / guidelines that can be shared?
    We're looking forwards to implementing Hygieia, however this is where we're stuck at the moment.

Affects: <jenkins-collector-version-number>.


Error creating bean with name 'hudsonCollectorTask': Invocation of init method failed

I'm running the hygieia-build-jenkins-collector as a docker container. It fails to start with the following error.

2020-09-09 06:41:23,212 [main] WARN o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hudsonCollectorTask': Invocation of init method failed; nested exception is java.lang.NullPointerException

I've attached my logs here:
jenkins-log.txt

Unable to use jenkins data collector

stacktrace-
Error creating bean with name 'hudsonCollectorTask': Invocation of init method failed; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.doRun(SpringApplication.java:347) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:295) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1112) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1101) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at com.capitalone.dashboard.Application.main(Application.java:16) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_211]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_211]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_211]
at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_211]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
at java.lang.Thread.run(Unknown Source) [na:1.8.0_211]
Caused by: java.lang.NullPointerException: null
at org.springframework.scheduling.support.CronSequenceGenerator.parse(CronSequenceGenerator.java:265) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:95) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:82) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.scheduling.support.CronTrigger.(CronTrigger.java:44) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at com.capitalone.dashboard.collector.CollectorTask.onStartup(CollectorTask.java:73) ~[core-3.1.5.jar!/:3.1.2-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_211]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_211]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_211]
at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_211]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
... 23 common frames omitted
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
at java.lang.Thread.run(Unknown Source)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hudsonCollectorTask': Invocation of init method failed; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752)
at org.springframework.boot.SpringApplication.doRun(SpringApplication.java:347)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:295)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1112)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1101)
at com.capitalone.dashboard.Application.main(Application.java:16)
... 6 more
Caused by: java.lang.NullPointerException
at org.springframework.scheduling.support.CronSequenceGenerator.parse(CronSequenceGenerator.java:265)
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:95)
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:82)
at org.springframework.scheduling.support.CronTrigger.(CronTrigger.java:44)
at com.capitalone.dashboard.collector.CollectorTask.onStartup(CollectorTask.java:73)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
... 23 more

properties file--
dbname=dashboarddb

Database HostName - default is localhost

dbhost=localhost

Database Port - default is 27017

dbport=27017

Database Username - default is blank

dbusername=dashboarduser

Database Password - default is blank

dbpassword=dbpassword

Collector schedule (required)

jenkins.cron=0 0/5 * * * *

The page size

jenkins.pageSize=1000

The folder depth - default is 10

jenkins.folderDepth=10

Jenkins server (required) - Can provide multiple

jenkins.servers[0]=http://localhost:8082

Determines if build console log is collected - defaults to false

jenkins.saveLog=true

Search criteria enabled via properties (max search criteria = 2)

#jenkins.searchFields[0]= options.jobName
#jenkins.searchFields[1]= niceName

Timeout values

jenkins.connectTimeout=20000
jenkins.readTimeout=20000

command-
java -jar jenkins-build-collector.jar --spring.config.name=jenkins --spring.config.location=D:\10655128\Hygeia\Hygeia\hygieia-build-jenkins-collector-master\target

how to bypass jenkins server ssl certificate check

getting below error while connecting to jenkins because of ssl certificate , how to bypass it

org.springframework.web.client.ResourceAccessException: I/O error on GET request for "https://servernamet/api/json?tree=jobs": sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; nested exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:607) ~[spring-web-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:572) ~[spring-web-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:493) ~[spring-web-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at com.capitalone.dashboard.collector.DefaultHudsonClient.makeRestCall(DefaultHudsonClient.java:653) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
at com.capitalone.dashboard.collector.DefaultHudsonClient.getJobsCount(DefaultHudsonClient.java:193) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
at com.capitalone.dashboard.collector.DefaultHudsonClient.getInstanceJobs(DefaultHudsonClient.java:113) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
at com.capitalone.dashboard.collector.HudsonCollectorTask.collect(HudsonCollectorTask.java:123) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
at com.capitalone.dashboard.collector.HudsonCollectorTask.collect(HudsonCollectorTask.java:42) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
at com.capitalone.dashboard.collector.CollectorTask.run(CollectorTask.java:63) [core-3.1.5.jar!/:3.1.2-SNAPSHOT]
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) [spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) [spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_131]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_131]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_131]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_131]

Exception opening socket

I am getting an error after reverting back from mongodb 4.0 to 3.4, as suggested here (hygieia/hygieia#2815). I validated that the user exists and is able to authenticate (using mongod and then mongo...).

SASL SCRAM-SHA-1 authentication failed for dashboarduser on dashboarddb from client XX.XX.XX.XX:XXXXX; UserNotFound: Could not find user dashboarduser@dashboarddb

Also, seeing the below error in logs: (could the issue be related to somehow mongodb shell being used is v4.0.6, whereas i had removed 4.0 and installed 3.4)

db_1 | 2019-04-22T23:50:46.494+0000 I NETWORK [initandlisten] waiting for connections on port 27017
db-setup_1 | MongoDB shell version v4.0.6
db-setup_1 | connecting to: mongodb://db:27017/admin?gssapiServiceName=mongodb
db-setup_1 | 2019-04-22T23:50:45.841+0000 E QUERY [js] Error: couldn't connect to server db:27017, connection attempt failed: SocketException: Error connecting to db:27017 (172.18.0.2:27017) :: caused by :: Connection refused :
db-setup_1 | connect@src/mongo/shell/mongo.js:343:13
db-setup_1 | @(connect):1:6
db-setup_1 | exception: connect failed

Thanks for any help or suggestions.

Hygieia Jenkins-Build Collector not starting with UnsatisfiedDependencyException

I posted this on Stackoverflow and it hasn't really seen any traffic so I'm creating an issue as it does seem like a bug to me.

I am having a problem getting the Jenkins-build collector working. I am using the latest hygieia-core and latest hygieia-build-jenkins-collector. I can get the rally, sonar, and github collectors running fine as well as a custom collector that I have built. I am on a Mac (locally run with no containers for now) and am building and running the collector with the following commands. Again, I have gotten the other collectors working in the same way.

mvn clean install package -q

java -jar ~/Sandbox/hygieia-dashboard/collectors/build/jenkins/target/jenkins-build-collector.jar --spring.config.name=jenkins --spring.config.location=/Users/[my username]/Sandbox/hygieia-dashboard/collectors/build/jenkins/application.properties

Here is my application.properties file.

dbname=dashboarddb

# Database HostName - default is localhost
dbhost=localhost

# Database Port - default is 27017
dbport=27018

# MongoDB replicaset
dbreplicaset=false
#dbhostport=[host1:port1,host2:port2,host3:port3]

# Database Username - default is blank
dbusername=dashboarduser

# Database Password - default is blank
dbpassword=dbpassword

# Collector schedule (required)
jenkins.cron=0 0/2 * * * *

# The page size
jenkins.pageSize=1000

# The folder depth - default is 10
jenkins.folderDepth=10

# Jenkins server (required) - Can provide multiple
jenkins.servers[0]=[my jenkins url]

# If using username/token for API authentication
# (required for Cloudbees Jenkins Ops Center) For example,
jenkins.servers[1]=http://[username]:[api-token]@[my jenkins url]

# Another option: If using same username/password Jenkins auth,
# set username/apiKey to use HTTP Basic Auth (blank=no auth)
jenkins.usernames[0]=[username]
jenkins.apiKeys[0]=[api-token]

# Determines if build console log is collected - defaults to false
jenkins.saveLog=true

# Search criteria enabled via properties (max search criteria = 2)
jenkins.searchFields[0]= options.jobName
jenkins.searchFields[1]= niceName

# Timeout values
jenkins.connectTimeout=20000
jenkins.readTimeout=20000

Below is my output. I added where the error is shown when it attempts to start, but let me know if you would like the whole thing.

2019-11-13 14:35:37,756 [main] ERROR o.s.boot.SpringApplication - Application startup failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'hudsonCollectorTask' defined in URL [jar:file:/Users/anderja1/Sandbox/hygieia-dashboard/collectors/build/jenkins/target/jenkins-build-collector.jar!/com/capitalone/dashboard/collector/HudsonCollectorTask.class]: Unsatisfied dependency expressed through constructor argument with index 4 of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository]: No qualifying bean of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository] is defined: expected single matching bean but found 2: collItemConfigHistoryRepository,sonarProfileRepostory; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository] is defined: expected single matching bean but found 2: collItemConfigHistoryRepository,sonarProfileRepostory
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:185) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1143) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1046) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
	at org.springframework.boot.SpringApplication.doRun(SpringApplication.java:347) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:295) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1112) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1101) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
	at com.capitalone.dashboard.Application.main(Application.java:16) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_232]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_232]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_232]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_232]
	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53) [jenkins-build-collector.jar!/:3.1.2-SNAPSHOT]
	at java.lang.Thread.run(Thread.java:819) [na:1.8.0_232]
Caused by: org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository] is defined: expected single matching bean but found 2: collItemConfigHistoryRepository,sonarProfileRepostory
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1126) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:813) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
	... 24 common frames omitted
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
	at java.lang.Thread.run(Thread.java:819)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'hudsonCollectorTask' defined in URL [jar:file:/Users/anderja1/Sandbox/hygieia-dashboard/collectors/build/jenkins/target/jenkins-build-collector.jar!/com/capitalone/dashboard/collector/HudsonCollectorTask.class]: Unsatisfied dependency expressed through constructor argument with index 4 of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository]: No qualifying bean of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository] is defined: expected single matching bean but found 2: collItemConfigHistoryRepository,sonarProfileRepostory; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository] is defined: expected single matching bean but found 2: collItemConfigHistoryRepository,sonarProfileRepostory
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:185)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1143)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1046)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752)
	at org.springframework.boot.SpringApplication.doRun(SpringApplication.java:347)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:295)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1112)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1101)
	at com.capitalone.dashboard.Application.main(Application.java:16)
	... 6 more
Caused by: org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [com.capitalone.dashboard.repository.CollItemConfigHistoryRepository] is defined: expected single matching bean but found 2: collItemConfigHistoryRepository,sonarProfileRepostory
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1126)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014)
	at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:813)
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
	... 24 more

Unless this collector works differently than the others, I can't see anything that I may be doing wrong, but I could very well be overlooking something. Let me know if you would like any more information regarding this. Thanks in advance!

Hygieia build collector is not fetching the build metrics from Jenkins

Hi,
am not able to collect the Jenkins build metrics via hygieia build collector

Here is my application.properties file:

Database Name

dbname=hygieiadb

Database HostName - default is localhost

dbhost=127.0.0.1

Database Port - default is 27017

dbport=27017

MongoDB replicaset

dbreplicaset=false
dbhostport=127.0.0.1:27017

Database Username - default is blank

dbusername=

Database Password - default is blank

dbpassword=

Collector schedule (required)

jenkins.cron=0 0/5 * * * *

The page size

jenkins.pageSize=1000

The folder depth - default is 10

jenkins.folderDepth=10

Jenkins server (required) - Can provide multiple

jenkins.servers[0]=http://username:apikey@jenkins_url

If using username/token for API authentication

(required for Cloudbees Jenkins Ops Center) For example,

#jenkins.servers[0]=
#jenkins.servers[1]=

Another option: If using same username/password Jenkins auth,

set username/apiKey to use HTTP Basic Auth (blank=no auth)

jenkins.usernames[0]=
jenkins.apiKeys[0]=

Determines if build console log is collected - defaults to false

jenkins.saveLog=true

Search criteria enabled via properties (max search criteria = 2)

jenkins.searchFields[0]= options.jobName
jenkins.searchFields[1]= niceName

Timeout values

jenkins.connectTimeout=20000
jenkins.readTimeout=20000

Here is my error:

2020-02-10 05:24:31,622 INFO com.capitalone.dashboard.Application - Started Application in 5.896 seconds (JVM running for 6.763)
2020-02-10 05:25:00,001 INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2020-02-10 05:25:00,388 INFO c.c.d.collector.CollectorTask - -----------------------------------
2020-02-10 05:25:00,388 INFO c.c.d.collector.CollectorTask - http://jenkins_url/
2020-02-10 05:25:00,388 INFO c.c.d.collector.CollectorTask - -----------------------------------
2020-02-10 05:26:28,892 INFO org.mongodb.driver.connection - Closed connection [connectionId{localValue:2, serverValue:1708}] to 127.0.0.1:27017 because it is past its maximum allowed idle time.

please help me to fix this issue.

Jenkins collector failing when there is a wild card(contains +) in the job name

Jenkins collector is throwing 404 error, when the job name contains the plus(+) in it. The same is worked when I removed + from the job name.

Sample Jenkins job name : Area+Polling

[taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - Client exception loading build details: 404 Not Found. URL =JENKINS_URL/xxxx+xxxx/100/


version : jenkins-build-collector-3.0.2

jenkins-build-collector-3.0.1 can not run

### Here's the exception information from the log:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hudsonCollectorTask': Invocation of init method failed; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.doRun(SpringApplication.java:347) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:295) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1112) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1101) [spring-boot-1.3.0.RELEASE.jar!/:1.3.0.RELEASE]
at com.capitalone.dashboard.Application.main(Application.java:16) [jenkins-build-collector-3.0.1.jar!/:3.0.1]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_181]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_181]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_181]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_181]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53) [jenkins-build-collector-3.0.1.jar!/:3.0.1]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_181]
Caused by: java.lang.NullPointerException: null
at org.springframework.scheduling.support.CronSequenceGenerator.parse(CronSequenceGenerator.java:265) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:95) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:82) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.scheduling.support.CronTrigger.(CronTrigger.java:44) ~[spring-context-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at com.capitalone.dashboard.collector.CollectorTask.onStartup(CollectorTask.java:73) ~[core-3.0.1.jar!/:3.0.1]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_181]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_181]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_181]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_181]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133) ~[spring-beans-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
... 23 common frames omitted
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hudsonCollectorTask': Invocation of init method failed; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752)
at org.springframework.boot.SpringApplication.doRun(SpringApplication.java:347)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:295)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1112)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1101)
at com.capitalone.dashboard.Application.main(Application.java:16)
... 6 more
Caused by: java.lang.NullPointerException
at org.springframework.scheduling.support.CronSequenceGenerator.parse(CronSequenceGenerator.java:265)
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:95)
at org.springframework.scheduling.support.CronSequenceGenerator.(CronSequenceGenerator.java:82)
at org.springframework.scheduling.support.CronTrigger.(CronTrigger.java:44)
at com.capitalone.dashboard.collector.CollectorTask.onStartup(CollectorTask.java:73)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
... 23 more

The contents of the application propertis file are as follows:

dbname=dashboarddb
dbhost=localhost
dbport=27017
dbreplicaset=false
dbhostport=localhost:27017
dbusername=dashboarduser
dbpassword=dbpassword
jenkins.cron=0 0/5 * * * *
jenkins.pageSize=1000
jenkins.folderDepth=10
jenkins.servers[0]=http://:@
jenkins.usernames[0]=
jenkins.apiKeys[0]=
jenkins.saveLog=true
jenkins.searchFields[0]=
jenkins.searchFields[1]=
jenkins.connectTimeout=20000
jenkins.readTimeout=20000

=====
The username,api token,gitlab host in the file has been customized,
However, the prompt Error creating bean with name 'hudsonCollectorTask' , and the null point exception
and another exception is :
2019-09-04 16:54:15,284 WARN o.s.c.c.c.ConfigServicePropertySourceLocator - Could not locate PropertySource: I/O error on GET request for "http://localhost:8888/application/default": 拒绝连接 (Connection refused); nested exception is java.net.ConnectException: 拒绝连接 (Connection refused)

I would like to ask: which service is refused connection.

two docker files in repo - which is in use?

Affects: ALL VERSIONS


Dockerfile exists in both root and docker/ . Please pick one.

Specifically, when using the docker-compose method to stand this up in local, the line linked below needs to be changed as the script still outputs to the wrong location. You are currently setting that location to config/applications.properties when it is writing local to where the property script is running.

Had to troubleshoot this for far too long to realize I was updating the wrong Dockerfile.

https://github.com/Hygieia/hygieia-build-jenkins-collector/blob/2ba52916efd765e8acffada0e7ef46147ca8da30/Dockerfile#L9

Jenkins collector Integration with Hygieia

i'm facing org.mongodb.driver.connection and client exception loading jobs (403 forbidden) while trying to install jenkins-collector jar to collect data from jenkins and post to Hygieia dashboard.
I could able to browse UI

Here is my application.properties config file to jenkins-collector jar data:
dbname=dashboarddb
dbhost=localhost
dbport=27017
dbusername=dashboarduser
dbpassword=dbpassword
dbreplicaset=false
dbhostport=localhost:27017
server.contextPath=/api
server.port=8080
jenkins.cron=0 0/5 * * * *
jenkins.servers[0]=http://34.82.84.XX:8088
jenkins.username[0]=jenkinsuser
jenkins.apiKeys[0]=119253237e063052404c2c637f20fccccX
jenkins.saveLog=false

Please find the log
16:15:15,958 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
16:15:15,959 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
16:15:15,960 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/devops/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector.jar!/BOOT-INF/classes!/logback.xml]
16:15:15,985 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath.
16:15:15,985 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/home/devops/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector.jar!/BOOT-INF/lib/core-3.10.0.jar!/logback.xml]
16:15:15,985 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/home/devops/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector.jar!/BOOT-INF/classes!/logback.xml]
16:15:16,060 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@5cb0d902 - URL [jar:file:/home/devops/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector.jar!/BOOT-INF/classes!/logback.xml] is not of type file
16:15:16,213 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
16:15:16,214 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
16:15:16,240 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
16:15:16,253 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
16:15:16,326 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
16:15:16,332 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ROLLING]
16:15:16,375 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1190900417 - No compression will be used
16:15:16,378 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1190900417 - Will use the pattern logs/buildcollector-%d{yyyy-MM-dd}.%i.log for the active file
16:15:16,391 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@1698c449 - The date pattern is 'yyyy-MM-dd' from file name pattern 'logs/buildcollector-%d{yyyy-MM-dd}.%i.log'.
16:15:16,391 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@1698c449 - Roll-over at midnight.
16:15:16,397 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@1698c449 - Setting initial period to Tue Jan 19 16:15:16 UTC 2021
16:15:16,398 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@1698c449 - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
16:15:16,398 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@1698c449 - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
16:15:16,403 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
16:15:16,405 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLING] - Active log file name: logs/buildcollector-2021-01-19.0.log
16:15:16,405 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLING] - File property is set to [null]
16:15:16,407 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
16:15:16,407 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ROLLING] to Logger[ROOT]
16:15:16,411 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT]
16:15:16,411 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
16:15:16,412 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@5ef04b5 - Registering current configuration as safe fallback point


| | | | () () | ___ \ () | | | / __ \ | | | | |
| |
| |_ _ __ _ _ ___ _ __ _ | |/ / _ | | | || / / ___ | | | ___ | | ___ _ __
| _ | | | |/ | |/ _ \ |/ _ |
| ___ \ | | | | |/ ` || | / _ | | |/ _ / __| / _ | '|
| | | | |
| | (
| | | __/ | (
| | | |/ / || | | | (| | | _/\ () | | | / (| || () | |
_| |/_, |_, ||_||_,| _/ _,|||_,| _/_/|||_|_|___/||
/ | / |
|
/ |
/

2021-01-19 16:15:17,995 [main] INFO com.capitalone.dashboard.Application - Starting Application v3.2.0-SNAPSHOT on devops with PID 4018 (/home/devops/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector.jar started by root in /home/devops/hygieia/hygieia-build-jenkins-collector/target)
2021-01-19 16:15:18,015 [main] INFO com.capitalone.dashboard.Application - No active profile set, falling back to default profiles: default
2021-01-19 16:15:18,253 [main] INFO o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext - Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@123a439b: startup date [Tue Jan 19 16:15:18 UTC 2021]; root of context hierarchy
2021-01-19 16:15:19,443 [background-preinit] INFO o.h.validator.internal.util.Version - HV000001: Hibernate Validator 5.4.2.Final
2021-01-19 16:15:22,732 [main] INFO c.u.j.c.EnableEncryptablePropertiesBeanFactoryPostProcessor - Post-processing PropertySource instances
2021-01-19 16:15:22,838 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource commandLineArgs [org.springframework.core.env.SimpleCommandLinePropertySource] to EncryptableEnumerablePropertySourceWrapper
2021-01-19 16:15:22,839 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource servletConfigInitParams [org.springframework.core.env.PropertySource$StubPropertySource] to EncryptablePropertySourceWrapper
2021-01-19 16:15:22,839 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource servletContextInitParams [org.springframework.core.env.PropertySource$StubPropertySource] to EncryptablePropertySourceWrapper
2021-01-19 16:15:22,840 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource systemProperties [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2021-01-19 16:15:22,841 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource systemEnvironment [org.springframework.core.env.SystemEnvironmentPropertySource] to EncryptableMapPropertySourceWrapper
2021-01-19 16:15:22,841 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource random [org.springframework.boot.context.config.RandomValuePropertySource] to EncryptablePropertySourceWrapper
2021-01-19 16:15:22,841 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource applicationConfig: [file:/home/devops/hygieia/hygieia-build-jenkins-collector/target/application.properties] [org.springframework.core.env.PropertiesPropertySource] to EncryptableMapPropertySourceWrapper
2021-01-19 16:15:22,842 [main] INFO c.u.j.EncryptablePropertySourceConverter - Converting PropertySource applicationConfig: [file:./application.properties] [org.springframework.core.env.PropertiesPropertySource] to EncryptableMapPropertySourceWrapper
2021-01-19 16:15:23,094 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler@6356695f' of type [org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2021-01-19 16:15:23,117 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'methodSecurityMetadataSource' of type [org.springframework.security.access.method.DelegatingMethodSecurityMetadataSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2021-01-19 16:15:23,532 [main] INFO c.u.j.r.DefaultLazyPropertyResolver - Property Resolver custom Bean not found with name 'encryptablePropertyResolver'. Initializing Default Property Resolver
2021-01-19 16:15:23,540 [main] INFO c.u.j.d.DefaultLazyPropertyDetector - Property Detector custom Bean not found with name 'encryptablePropertyDetector'. Initializing Default Property Detector
2021-01-19 16:15:23,941 [main] INFO o.s.b.c.e.t.TomcatEmbeddedServletContainer - Tomcat initialized with port(s): 8081 (http)
2021-01-19 16:15:24,010 [main] INFO o.a.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8081"]
2021-01-19 16:15:24,095 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat]
2021-01-19 16:15:24,096 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet Engine: Apache Tomcat/8.5.57
2021-01-19 16:15:24,320 [localhost-startStop-1] INFO o.a.c.c.C.[.[localhost].[/api] - Initializing Spring embedded WebApplicationContext
2021-01-19 16:15:24,320 [localhost-startStop-1] INFO o.s.web.context.ContextLoader - Root WebApplicationContext: initialization completed in 6068 ms
2021-01-19 16:15:25,112 [localhost-startStop-1] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2021-01-19 16:15:25,583 [localhost-startStop-1] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2021-01-19 16:15:25,690 [localhost-startStop-1] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2021-01-19 16:15:25,811 [localhost-startStop-1] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@b9c16817, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@69ba1b13, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@4c74a5c, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2021-01-19 16:15:26,196 [cluster-ClusterId{value='6007059d0274070fb20f073f', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:1, serverValue:55}] to localhost:27017
2021-01-19 16:15:26,375 [cluster-ClusterId{value='6007059d0274070fb20f073f', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 4, 3]}, minWireVersion=0, maxWireVersion=9, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=176285370}
2021-01-19 16:15:27,029 [localhost-startStop-1] INFO o.s.b.w.s.FilterRegistrationBean - Mapping filter: 'characterEncodingFilter' to: [/]
2021-01-19 16:15:27,032 [localhost-startStop-1] INFO o.s.b.w.s.DelegatingFilterProxyRegistrationBean - Mapping filter: 'springSecurityFilterChain' to: [/
]
2021-01-19 16:15:27,033 [localhost-startStop-1] INFO o.s.b.w.s.FilterRegistrationBean - Mapping filter: 'apiTokenRequestFilter' to: [/*]
2021-01-19 16:15:27,035 [localhost-startStop-1] INFO o.s.b.w.s.ServletRegistrationBean - Mapping servlet: 'dispatcherServlet' to [/]
2021-01-19 16:15:27,197 [main] INFO o.s.s.c.ThreadPoolTaskScheduler - Initializing ExecutorService 'taskScheduler'
2021-01-19 16:15:29,294 [main] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:2, serverValue:56}] to localhost:27017
2021-01-19 16:15:30,691 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2021-01-19 16:15:30,695 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2021-01-19 16:15:30,697 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2021-01-19 16:15:30,715 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@b9c16817, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@69ba1b13, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@4c74a5c, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2021-01-19 16:15:30,751 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2021-01-19 16:15:30,752 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2021-01-19 16:15:30,753 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2021-01-19 16:15:30,779 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@b9c16817, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@69ba1b13, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@4c74a5c, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2021-01-19 16:15:30,814 [cluster-ClusterId{value='600705a20274070fb20f0740', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:3, serverValue:57}] to localhost:27017
2021-01-19 16:15:30,816 [cluster-ClusterId{value='600705a20274070fb20f0740', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 4, 3]}, minWireVersion=0, maxWireVersion=9, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=802853}
2021-01-19 16:15:30,852 [cluster-ClusterId{value='600705a20274070fb20f0741', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:4, serverValue:58}] to localhost:27017
2021-01-19 16:15:30,853 [cluster-ClusterId{value='600705a20274070fb20f0741', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 4, 3]}, minWireVersion=0, maxWireVersion=9, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=705564}
2021-01-19 16:15:31,904 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2021-01-19 16:15:31,907 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2021-01-19 16:15:31,909 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2021-01-19 16:15:31,916 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@b9c16817, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@69ba1b13, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@4c74a5c, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2021-01-19 16:15:31,991 [cluster-ClusterId{value='600705a30274070fb20f0742', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:5, serverValue:59}] to localhost:27017
2021-01-19 16:15:31,992 [cluster-ClusterId{value='600705a30274070fb20f0742', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 4, 3]}, minWireVersion=0, maxWireVersion=9, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=729763}
2021-01-19 16:15:33,990 [main] INFO o.s.s.web.DefaultSecurityFilterChain - Creating filter chain: org.springframework.security.web.util.matcher.AnyRequestMatcher@1, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@723e88f9, org.springframework.security.web.context.SecurityContextPersistenceFilter@7bf3a5d8, org.springframework.security.web.header.HeaderWriterFilter@6f3187b0, org.springframework.security.web.authentication.logout.LogoutFilter@51a9ad5e, com.capitalone.dashboard.auth.apitoken.ApiTokenRequestFilter@1dd93a09, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@39b43d60, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@72ef8d15, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5f0fd5a0, org.springframework.security.web.session.SessionManagementFilter@48b67364, org.springframework.security.web.access.ExceptionTranslationFilter@3336e6b6, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@407a7f2a]
2021-01-19 16:15:34,140 [main] INFO o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2021-01-19 16:15:34,142 [main] INFO o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2021-01-19 16:15:34,226 [main] INFO o.s.w.s.h.SimpleUrlHandlerMapping - Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2021-01-19 16:15:34,354 [main] INFO o.s.w.s.m.m.a.RequestMappingHandlerAdapter - Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@123a439b: startup date [Tue Jan 19 16:15:18 UTC 2021]; root of context hierarchy
2021-01-19 16:15:35,236 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Registering beans for JMX exposure on startup
2021-01-19 16:15:35,259 [main] INFO o.a.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8081"]
2021-01-19 16:15:35,265 [main] INFO o.a.tomcat.util.net.NioSelectorPool - Using a shared selector for servlet write/read
2021-01-19 16:15:35,292 [main] INFO o.s.b.c.e.t.TomcatEmbeddedServletContainer - Tomcat started on port(s): 8081 (http)
2021-01-19 16:15:35,304 [main] INFO com.capitalone.dashboard.Application - Started Application in 18.381 seconds (JVM running for 20.973)
2021-01-19 16:17:25,761 [MaintenanceTimer-1-thread-1] INFO org.mongodb.driver.connection - Closed connection [connectionId{localValue:2, serverValue:56}] to localhost:27017 because it is past its maximum allowed idle time.
2021-01-19 16:20:00,001 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Getting Collector: Hudson
2021-01-19 16:20:00,040 [taskScheduler-1] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:6, serverValue:60}] to localhost:27017
2021-01-19 16:20:00,062 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Starting Collector=Hudson
2021-01-19 16:20:00,119 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2021-01-19 16:20:00,120 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - http://34.82.84.91:8088
2021-01-19 16:20:00,120 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2021-01-19 16:20:00,347 [taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - client exception loading jobs
org.springframework.web.client.HttpClientErrorException: 403 Forbidden
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:108)
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:709)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:662)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:637)
at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:558)
at com.capitalone.dashboard.collector.DefaultHudsonClient.makeRestCall(DefaultHudsonClient.java:657)
at com.capitalone.dashboard.collector.DefaultHudsonClient.getJobsCount(DefaultHudsonClient.java:193)
at com.capitalone.dashboard.collector.DefaultHudsonClient.getInstanceJobs(DefaultHudsonClient.java:113)
at com.capitalone.dashboard.collector.HudsonCollectorTask.collect(HudsonCollectorTask.java:126)
at com.capitalone.dashboard.collector.HudsonCollectorTask.collect(HudsonCollectorTask.java:44)
at com.capitalone.dashboard.collector.CollectorTask.run(CollectorTask.java:69)
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
2021-01-19 16:20:00,373 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Error getting jobs for: http://34.82.84.91:8088 0s
2021-01-19 16:20:00,373 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Finished running Collector=Hudson timeTaken=311 collectorItems=0

Jenkins Collector Not collecting all the Jobs only able to collect first few jobs.

Jenkins is not collecting all the jobs. Jenkins is able to collect few 500 Jobs. I have more than 3000 Jobs approx.

2019-06-07 16:45:00,000 INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2019-06-07 16:45:00,357 INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-06-07 16:45:00,358 INFO c.c.d.collector.CollectorTask - https://prod-jenkins.pxxxxxns.com/
2019-06-07 16:45:00,359 INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-06-07 16:45:01,181 INFO c.c.d.collector.DefaultHudsonClient - Fetching jobs 0/8 pageSize 1000...
2019-06-07 16:45:03,629 INFO c.c.d.collector.CollectorTask - Fetched jobs 3s
2019-06-07 16:45:04,158 INFO c.c.d.collector.CollectorTask - New jobs 586 0s
2019-06-07 16:45:04,195 INFO c.c.d.collector.CollectorTask - New builds 0 0s
2019-06-07 16:45:04,199 INFO c.c.d.collector.CollectorTask - New configs 0 0s
2019-06-07 16:45:04,199 INFO c.c.d.collector.CollectorTask - Finished 3s
2019-06-07 16:46:24,251 INFO org.mongodb.driver.connection - Closed connection [connectionId{localValue:2, serverValue:1962}] to localhost:27017 because it is past its maximum allowed idle time.
2019-06-07 16:50:00,000 INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2019-06-07 16:50:00,067 INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:6, serverValue:1966}] to localhost:27017
2019-06-07 16:50:00,323 INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-06-07 16:50:00,323 INFO c.c.d.collector.CollectorTask - https://prod-jenkins.paxxxxxxns.com/
2019-06-07 16:50:00,324 INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-06-07 16:50:00,722 INFO c.c.d.collector.DefaultHudsonClient - Fetching jobs 0/8 pageSize 1000...
2019-06-07 16:50:02,991 INFO c.c.d.collector.CollectorTask - Fetched jobs 2s
2019-06-07 16:50:03,062 INFO c.c.d.collector.CollectorTask - New jobs 0 0s
2019-06-07 16:50:03,066 INFO c.c.d.collector.CollectorTask - New builds 0 0s
2019-06-07 16:50:03,069 INFO c.c.d.collector.CollectorTask - New configs 0 0s
2019-06-07 16:50:03,070 INFO c.c.d.collector.CollectorTask - Finished 2s

Below is my properties.

dbname=dashboarddb
dbhost=localhost
dbport=27017
dbreplicaset=false
dbusername=dashboarduser
dbpassword=dbpassword
jenkins.cron=0 0/5 * * * *
jenkins.pageSize=1000
jenkins.folderDepth=10
jenkins.servers[0]=https://prod-jenkins.pxxxxxns.com/
jenkins.usernames[0]=[email protected]
jenkins.apiKeys[0]=110xxxxxxxxxxxxx5e56xxxxxxxxx2a1
jenkins.saveLog=true
jenkins.searchFields[0]= options.jobName
jenkins.searchFields[1]= niceName

PS: Few months back with same property file it was working fine.

Hygieia Jenkins build collector issue

While Running Hygieia jenkins build collector I got the following error.
Pulled the latest repo from github

INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2020-10-22 12:40:00,003 ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task.
java.lang.NullPointerException: null
at java.util.ArrayList.addAll(ArrayList.java:577) ~[na:1.8.0_111]
at com.capitalone.dashboard.model.HudsonCollector.prototype(HudsonCollector.java:37) ~[jenkins-build-collector-2.0.5-SNAPSHOT.jar!/:2.0.5-SNAPSHOT]
at com.capitalone.dashboard.collector.HudsonCollectorTask.getCollector(HudsonCollectorTask.java:62) ~[jenkins-build-collector-2.0.5-SNAPSHOT.jar!/:2.0.5-SNAPSHOT]
at com.capitalone.dashboard.collector.HudsonCollectorTask.getCollector(HudsonCollectorTask.java:32) ~[jenkins-build-collector-2.0.5-SNAPSHOT.jar!/:2.0.5-SNAPSHOT]
at com.capitalone.dashboard.collector.CollectorTask.run(CollectorTask.java:48) ~[core-2.0.5-SNAPSHOT.jar!/:2.0.5-SNAPSHOT]
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) ~[spring-context-4.1.7.RELEASE.jar!/:4.1.7.RELEASE]
at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) [spring-context-4.1.7.RELEASE.jar!/:4.1.7.RELEASE]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_111]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_111]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_111]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_111]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_111]

Index unique_mdata_key_type already exists - causing collector not to work

Hi Friends,

I have installed api,gulp and its working fine and i can able to access weburl and login to hygieia dashboard.

When am trying to install hygieia-jenkins-build and run below api command, it is not exposing port 8080.

java -jar /opt/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector-3.1.1-SNAPSHOT.jar --spring.config.name=api --spring.config.location=/opt/hygieia/hygieia-build-jenkins-collector/application.properties

Am using latest hygieia version.

Below is my API properties and API logs, Could you please help me where is the issue.

API Properties,

auth.expirationTime=1200000

Database Name

dbname=dashboarddb

Database HostName - default is localhost

dbhost=localhost

Database Port - default is 27017

dbport=27017

MongoDB replicaset

dbreplicaset=false
#dbhostport=[host1:port1,host2:port2,host3:port3]

Database Username - default is blank

dbusername=dashboarduser

Database Password - default is blank

dbpassword=dbpassword

Collector schedule (required)

jenkins.cron=0 0/5 * * * *

The page size

jenkins.pageSize=1000

The folder depth - default is 10

jenkins.folderDepth=10

Jenkins server (required) - Can provide multiple

jenkins.servers[0]=http://192.168.56.101:8080

If using username/token for API authentication

(required for Cloudbees Jenkins Ops Center) For example,

jenkins.servers[1]=http://admin:[email protected]:8080

Another option: If using same username/password Jenkins auth,

set username/apiKey to use HTTP Basic Auth (blank=no auth)

jenkins.usernames[0]=admin
jenkins.apiKeys[0]=11e275754565f45549201d61afbe51f36c

Determines if build console log is collected - defaults to false

jenkins.saveLog=true

Search criteria enabled via properties (max search criteria = 2)

jenkins.searchFields[0]= options.jobName
jenkins.searchFields[1]= niceName

Timeout values

jenkins.connectTimeout=20000
jenkins.readTimeout=20000

#server details
server.port=8080
server.contextPath=/api

Gulp to API connectivity logs,

[Proxy] { Error: connect ECONNREFUSED 127.0.0.1:8080
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1198:14)
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect',
address: '127.0.0.1',
port: 8080 }


API Logs,

root@prabhu-VirtualBox:/opt/hygieia# java -jar /opt/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector-3.1.1-SNAPSHOT.jar --spring.config.name=api --spring.config.location=/opt/hygieia/hygieia-build-jenkins-collector/application.properties
12:13:58,910 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
12:13:58,913 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
12:13:58,913 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/opt/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector-3.1.1-SNAPSHOT.jar!/logback.xml]
12:13:58,916 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath.
12:13:58,917 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/opt/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector-3.1.1-SNAPSHOT.jar!/logback.xml]
12:13:58,917 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/opt/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector-3.1.1-SNAPSHOT.jar!/lib/core-3.1.2.jar!/logback.xml]
12:13:58,997 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@62450023 - URL [jar:file:/opt/hygieia/hygieia-build-jenkins-collector/target/jenkins-build-collector-3.1.1-SNAPSHOT.jar!/logback.xml] is not of type file
12:13:59,147 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
12:13:59,204 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
12:13:59,241 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
12:13:59,329 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
12:13:59,521 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
12:13:59,527 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ROLLING]
12:13:59,644 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy - No compression will be used
12:13:59,650 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy - Will use the pattern logs/buildcollector-%d{yyyy-MM-dd}.%i.log for the active file
12:13:59,654 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@7ad8a5a - The date pattern is 'yyyy-MM-dd' from file name pattern 'logs/buildcollector-%d{yyyy-MM-dd}.%i.log'.
12:13:59,654 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@7ad8a5a - Roll-over at midnight.
12:13:59,662 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@7ad8a5a - Setting initial period to Thu Sep 12 12:13:59 IST 2019
12:13:59,669 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
12:13:59,669 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLING] - Active log file name: logs/buildcollector-2019-09-12.0.log
12:13:59,670 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLING] - File property is set to [null]
12:13:59,671 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
12:13:59,671 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ROLLING] to Logger[ROOT]
12:13:59,673 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT]
12:13:59,673 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
12:13:59,674 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@4f29a0f2 - Registering current configuration as safe fallback point

2019-09-12 12:14:01,507 [main] INFO o.s.c.a.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@716ca842: startup date [Thu Sep 12 12:14:01 IST 2019]; root of context hierarchy
2019-09-12 12:14:02,043 [main] INFO o.s.b.f.a.AutowiredAnnotationBeanPostProcessor - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-09-12 12:14:02,254 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'configurationPropertiesRebinderAutoConfiguration' of type [class org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$b80cf159] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)


| | | | () () | ___ \ () | | | / __ \ | | | | |
| |
| |_ _ __ _ _ ___ _ __ _ | |/ / _ | | | || / / ___ | | | ___ | | ___ _ __
| _ | | | |/ | |/ _ \ |/ _ |
| ___ \ | | | | |/ ` || | / _ | | |/ _ / __| / _ | '|
| | | | |
| | (
| | | __/ | (
| | | |/ / || | | | (| | | _/\ () | | | / (| || () | |
_| |/_, |_, ||_||_,| _/ _,|||_,| _/_/|||_|_|___/||
/ | / |
|
/ |
/

2019-09-12 12:14:03,196 [main] INFO o.s.c.c.c.ConfigServicePropertySourceLocator - Fetching config from server at: http://localhost:8888
2019-09-12 12:14:03,426 [main] WARN o.s.c.c.c.ConfigServicePropertySourceLocator - Could not locate PropertySource: I/O error on GET request for "http://localhost:8888/application/default": Connection refused (Connection refused); nested exception is java.net.ConnectException: Connection refused (Connection refused)
2019-09-12 12:14:03,434 [main] INFO com.capitalone.dashboard.Application - No profiles are active
2019-09-12 12:14:03,477 [main] INFO o.s.c.a.AnnotationConfigApplicationContext - Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@4979368e: startup date [Thu Sep 12 12:14:03 IST 2019]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@716ca842
2019-09-12 12:14:06,890 [main] INFO o.s.cloud.context.scope.GenericScope - BeanFactory id=ec50a4cd-f106-3bb1-bc94-346c7cabb081
2019-09-12 12:14:06,909 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Post-processing PropertySource instances
2019-09-12 12:14:06,938 [main] INFO c.u.j.c.StringEncryptorConfiguration - String Encryptor custom Bean not found with name 'jasyptStringEncryptor'. Initializing String Encryptor based on properties with name 'jasyptStringEncryptor'
2019-09-12 12:14:06,957 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Converting PropertySource commandLineArgs [org.springframework.core.env.SimpleCommandLinePropertySource] to EncryptableEnumerablePropertySourceWrapper
2019-09-12 12:14:06,960 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Converting PropertySource systemProperties [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2019-09-12 12:14:06,961 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Converting PropertySource systemEnvironment [org.springframework.core.env.SystemEnvironmentPropertySource] to EncryptableMapPropertySourceWrapper
2019-09-12 12:14:06,961 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Converting PropertySource random [org.springframework.boot.context.config.RandomValuePropertySource] to EncryptablePropertySourceWrapper
2019-09-12 12:14:06,962 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Converting PropertySource applicationConfig: [file:/opt/hygieia/hygieia-build-jenkins-collector/application.properties] [org.springframework.core.env.PropertiesPropertySource] to EncryptableMapPropertySourceWrapper
2019-09-12 12:14:06,962 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Converting PropertySource springCloudClientHostInfo [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2019-09-12 12:14:06,964 [main] INFO c.u.j.EnableEncryptablePropertySourcesPostProcessor - Converting PropertySource defaultProperties [org.springframework.core.env.MapPropertySource] to EncryptableMapPropertySourceWrapper
2019-09-12 12:14:06,988 [main] INFO o.s.b.f.a.AutowiredAnnotationBeanPostProcessor - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-09-12 12:14:07,089 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration' of type [class org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$b80cf159] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-09-12 12:14:08,024 [main] INFO o.s.s.c.ThreadPoolTaskScheduler - Initializing ExecutorService 'taskScheduler'
2019-09-12 12:14:08,176 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2019-09-12 12:14:08,323 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2019-09-12 12:14:08,386 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2019-09-12 12:14:08,548 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', readPreference=primary, writeConcern=WriteConcern{w=1, wtimeout=0, fsync=false, j=false, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@1036f001, minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=10000, socketTimeout=0, socketKeepAlive=false, sslEnabled=false, sslInvalidHostNamesAllowed=false, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@715ceb94, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@1f7155c, socketFactory=javax.net.DefaultSocketFactory@4a7a771d, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000}, socketSettings=SocketSettings{connectTimeoutMS=10000, readTimeoutMS=0, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}}}
2019-09-12 12:14:09,045 [cluster-ClusterId{value='5d79e938f1e73d7297e9d90f', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:1, serverValue:36}] to localhost:27017
2019-09-12 12:14:09,047 [cluster-ClusterId{value='5d79e938f1e73d7297e9d90f', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[3, 6, 3]}, minWireVersion=0, maxWireVersion=6, electionId=null, maxDocumentSize=16777216, roundTripTimeNanos=1345453}
2019-09-12 12:14:09,814 [main] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:2, serverValue:37}] to localhost:27017
2019-09-12 12:14:10,983 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2019-09-12 12:14:10,990 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2019-09-12 12:14:10,991 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2019-09-12 12:14:11,005 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', readPreference=primary, writeConcern=WriteConcern{w=1, wtimeout=0, fsync=false, j=false, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@1036f001, minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=10000, socketTimeout=0, socketKeepAlive=false, sslEnabled=false, sslInvalidHostNamesAllowed=false, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@715ceb94, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@1f7155c, socketFactory=javax.net.DefaultSocketFactory@4a7a771d, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000}, socketSettings=SocketSettings{connectTimeoutMS=10000, readTimeoutMS=0, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}}}
2019-09-12 12:14:11,042 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2019-09-12 12:14:11,044 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2019-09-12 12:14:11,048 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2019-09-12 12:14:11,079 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', readPreference=primary, writeConcern=WriteConcern{w=1, wtimeout=0, fsync=false, j=false, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@1036f001, minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=10000, socketTimeout=0, socketKeepAlive=false, sslEnabled=false, sslInvalidHostNamesAllowed=false, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@715ceb94, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@1f7155c, socketFactory=javax.net.DefaultSocketFactory@4a7a771d, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000}, socketSettings=SocketSettings{connectTimeoutMS=10000, readTimeoutMS=0, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}}}
2019-09-12 12:14:11,314 [cluster-ClusterId{value='5d79e93af1e73d7297e9d910', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:3, serverValue:38}] to localhost:27017
2019-09-12 12:14:11,317 [cluster-ClusterId{value='5d79e93af1e73d7297e9d910', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[3, 6, 3]}, minWireVersion=0, maxWireVersion=6, electionId=null, maxDocumentSize=16777216, roundTripTimeNanos=2358648}
2019-09-12 12:14:11,354 [cluster-ClusterId{value='5d79e93bf1e73d7297e9d911', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:4, serverValue:39}] to localhost:27017
2019-09-12 12:14:11,355 [cluster-ClusterId{value='5d79e93bf1e73d7297e9d911', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[3, 6, 3]}, minWireVersion=0, maxWireVersion=6, electionId=null, maxDocumentSize=16777216, roundTripTimeNanos=466313}
2019-09-12 12:14:12,651 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2019-09-12 12:14:12,653 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2019-09-12 12:14:12,662 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2019-09-12 12:14:12,668 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', readPreference=primary, writeConcern=WriteConcern{w=1, wtimeout=0, fsync=false, j=false, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@1036f001, minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=10000, socketTimeout=0, socketKeepAlive=false, sslEnabled=false, sslInvalidHostNamesAllowed=false, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@715ceb94, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@1f7155c, socketFactory=javax.net.DefaultSocketFactory@4a7a771d, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000}, socketSettings=SocketSettings{connectTimeoutMS=10000, readTimeoutMS=0, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}}}
2019-09-12 12:14:12,860 [cluster-ClusterId{value='5d79e93cf1e73d7297e9d912', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:5, serverValue:40}] to localhost:27017
2019-09-12 12:14:12,865 [cluster-ClusterId{value='5d79e93cf1e73d7297e9d912', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[3, 6, 3]}, minWireVersion=0, maxWireVersion=6, electionId=null, maxDocumentSize=16777216, roundTripTimeNanos=412748}
2019-09-12 12:14:15,116 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Registering beans for JMX exposure on startup
2019-09-12 12:14:15,160 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Bean with name 'configurationPropertiesRebinder' has been autodetected for JMX exposure
2019-09-12 12:14:15,162 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Bean with name 'environmentManager' has been autodetected for JMX exposure
2019-09-12 12:14:15,164 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Bean with name 'refreshScope' has been autodetected for JMX exposure
2019-09-12 12:14:15,166 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Located managed bean 'environmentManager': registering with JMX server as MBean [org.springframework.cloud.context.environment:name=environmentManager,type=EnvironmentManager]
2019-09-12 12:14:15,194 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Located managed bean 'refreshScope': registering with JMX server as MBean [org.springframework.cloud.context.scope.refresh:name=refreshScope,type=RefreshScope]
2019-09-12 12:14:15,216 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Located managed bean 'configurationPropertiesRebinder': registering with JMX server as MBean [org.springframework.cloud.context.properties:name=configurationPropertiesRebinder,context=4979368e,type=ConfigurationPropertiesRebinder]
2019-09-12 12:14:15,364 [main] INFO com.capitalone.dashboard.Application - Started Application in 15.422 seconds (JVM running for 17.165)
2019-09-12 12:15:00,003 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2019-09-12 12:15:00,108 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-09-12 12:15:00,110 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - http://192.168.56.101:8080
2019-09-12 12:15:00,112 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-09-12 12:15:00,331 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - Fetching jobs 0/5 pageSize 1000...
2019-09-12 12:15:00,429 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Fetched jobs 0s
2019-09-12 12:15:00,432 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - New jobs 0 0s
2019-09-12 12:15:00,592 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - New builds 0 0s
2019-09-12 12:15:00,601 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - New configs 0 0s
2019-09-12 12:15:00,617 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Finished 0s
2019-09-12 12:15:00,618 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-09-12 12:15:00,619 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - http://admin:[email protected]:8080
2019-09-12 12:15:00,620 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-09-12 12:15:00,670 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - Fetching jobs 0/5 pageSize 1000...
2019-09-12 12:15:00,726 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Fetched jobs 0s
2019-09-12 12:15:00,727 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - New jobs 0 0s
2019-09-12 12:15:00,730 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - New builds 0 0s
2019-09-12 12:15:00,739 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - New configs 0 0s
2019-09-12 12:15:00,739 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Finished 0s
2019-09-12 12:16:08,405 [pool-3-thread-1] INFO org.mongodb.driver.connection - Closed connection [connectionId{localValue:2, serverValue:37}] to localhost:27017 because it is past its maximum allowed idle time.


Got “client exception loading jobs details”

Hi there, while run collector I've got error like below. And my version is Release3.1.0. Does collector relate to specified jenkins version?

2020-04-22 17:30:00,002 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2020-04-22 17:30:00,030 [taskScheduler-1] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:12, serverValue:234}] to localhost:27017
2020-04-22 17:30:00,036 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2020-04-22 17:30:00,036 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - http://192.168.1.193:8010/jenkins
2020-04-22 17:30:00,036 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2020-04-22 17:30:00,045 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - Fetching jobs 0/1 pageSize 1000...
2020-04-22 17:30:00,051 [taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - client exception loading jobs details
org.springframework.web.client.HttpClientErrorException: 400
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:91) ~[spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:641) ~[spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:597) ~[spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:572) ~[spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:493) ~[spring-web-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at com.capitalone.dashboard.collector.DefaultHudsonClient.makeRestCall(DefaultHudsonClient.java:650) ~[classes/:na]
at com.capitalone.dashboard.collector.DefaultHudsonClient.getInstanceJobs(DefaultHudsonClient.java:126) ~[classes/:na]
at com.capitalone.dashboard.collector.HudsonCollectorTask.collect(HudsonCollectorTask.java:123) [classes/:na]
at com.capitalone.dashboard.collector.HudsonCollectorTask.collect(HudsonCollectorTask.java:42) [classes/:na]
at com.capitalone.dashboard.collector.CollectorTask.run(CollectorTask.java:63) [core-3.1.2.jar:na]
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) [spring-context-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) [spring-context-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_161]
at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) [na:1.8.0_161]
at java.util.concurrent.FutureTask.run(FutureTask.java) [na:1.8.0_161]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_161]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.8.0_161]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_161]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_161]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_161]
2020-04-22 17:30:00,051 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Error getting jobs for: http://192.168.1.193:8010/jenkins 0s

Referencing wrong properties file

The properties-builder.sh under normal execution circumstances (specified in the Dockerfile) will place a file by the name of hygieia-jenkins-build-collector.properties in the /hygieia/config/ directory. And as you can see below, the Dockerfile isn't looking for that file...

https://github.com/Hygieia/Hygieia/blob/35ba1f69bfb2f6afbe2a133ccb2c4701d21010a6/collectors/build/jenkins/Dockerfile#L9

https://github.com/Hygieia/Hygieia/blob/35ba1f69bfb2f6afbe2a133ccb2c4701d21010a6/collectors/build/jenkins/docker/properties-builder.sh#L11-L17

The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured.

Hi
I am getting below error when trying to run Jenkins Collector. I've already tried reinstalling the Hygiea completely on same server as well as on a fresh server. This was working fine a few days back, I somehow had to stop and start the collector again, That's when started getting this error for other collector as well...
This below error is in a fresh server after hygieia installation.
Gulp Server is running on port 3000, api running on port 8080
Sharing jenkins.properties below:
dbname=dashboarddb
dbusername=dashboarduser
dbpassword=dbpassword
dbhost=localhost
dbport=27017
dbreplicaset=false

#collector options
jenkins.cron=1 * * * * *
jenkins.pageSize=1000
jenkins.servers[0]=https://my-jenkins-server
jenkins.usernames[0]=admin
jenkins.apiKeys[0]=password
jenkins.pageSize=1000
jenkins.savelog=true
jenkins.searchFields[0]= options.jobName
jenkins.searchFields[1]= niceName
jenkins.folderDepth=10
jenkins.connectTimeout=20000
jenkins.readTimeout=20000

java -jar /opt/hygieia-build-jenkins-collector/target/jenkins-build-collector.jar --spring.config.name=jenkins --spring.config.location=/opt/hygieia-build-jenkins-collector/jenkins.properties

2020-09-30 14:12:55,916 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat]
2020-09-30 14:12:55,916 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet Engine: Apache Tomcat/8.5.57
2020-09-30 14:12:56,007 [localhost-startStop-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext
2020-09-30 14:12:56,007 [localhost-startStop-1] INFO o.s.web.context.ContextLoader - Root WebApplicationContext: initialization completed in 2644 ms
2020-09-30 14:12:56,294 [localhost-startStop-1] INFO c.u.j.r.DefaultLazyPropertyResolver - Property Resolver custom Bean not found with name 'encryptablePropertyResolver'. Initializing Default Property Resolver
2020-09-30 14:12:56,298 [localhost-startStop-1] INFO c.u.j.d.DefaultLazyPropertyDetector - Property Detector custom Bean not found with name 'encryptablePropertyDetector'. Initializing Default Property Detector
2020-09-30 14:12:56,353 [localhost-startStop-1] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2020-09-30 14:12:56,524 [localhost-startStop-1] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2020-09-30 14:12:56,558 [localhost-startStop-1] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2020-09-30 14:12:56,605 [localhost-startStop-1] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@23349f4d, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@7ac1b2e9, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@565c4d02, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2020-09-30 14:12:56,865 [cluster-ClusterId{value='5f74451033ce13f1f2647d1b', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:1, serverValue:66}] to localhost:27017
2020-09-30 14:12:56,869 [cluster-ClusterId{value='5f74451033ce13f1f2647d1b', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 0, 20]}, minWireVersion=0, maxWireVersion=7, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=2767856}
2020-09-30 14:12:57,032 [localhost-startStop-1] INFO o.s.b.w.s.FilterRegistrationBean - Mapping filter: 'characterEncodingFilter' to: [/]
2020-09-30 14:12:57,033 [localhost-startStop-1] INFO o.s.b.w.s.DelegatingFilterProxyRegistrationBean - Mapping filter: 'springSecurityFilterChain' to: [/
]
2020-09-30 14:12:57,033 [localhost-startStop-1] INFO o.s.b.w.s.FilterRegistrationBean - Mapping filter: 'apiTokenRequestFilter' to: [/*]
2020-09-30 14:12:57,033 [localhost-startStop-1] INFO o.s.b.w.s.ServletRegistrationBean - Mapping servlet: 'dispatcherServlet' to [/]
2020-09-30 14:12:57,149 [main] INFO o.s.s.c.ThreadPoolTaskScheduler - Initializing ExecutorService 'taskScheduler'
2020-09-30 14:12:57,611 [main] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:2, serverValue:67}] to localhost:27017
2020-09-30 14:12:58,115 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2020-09-30 14:12:58,115 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2020-09-30 14:12:58,115 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2020-09-30 14:12:58,121 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@23349f4d, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@7ac1b2e9, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@565c4d02, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2020-09-30 14:12:58,131 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2020-09-30 14:12:58,131 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2020-09-30 14:12:58,132 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2020-09-30 14:12:58,138 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@23349f4d, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@7ac1b2e9, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@565c4d02, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2020-09-30 14:12:58,152 [cluster-ClusterId{value='5f74451233ce13f1f2647d1c', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:3, serverValue:68}] to localhost:27017
2020-09-30 14:12:58,153 [cluster-ClusterId{value='5f74451233ce13f1f2647d1c', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 0, 20]}, minWireVersion=0, maxWireVersion=7, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=500598}
2020-09-30 14:12:58,173 [cluster-ClusterId{value='5f74451233ce13f1f2647d1d', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:4, serverValue:69}] to localhost:27017
2020-09-30 14:12:58,173 [cluster-ClusterId{value='5f74451233ce13f1f2647d1d', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 0, 20]}, minWireVersion=0, maxWireVersion=7, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=390538}
2020-09-30 14:12:58,661 [main] INFO c.c.dashboard.config.MongoConfig - ReplicaSetfalse
2020-09-30 14:12:58,661 [main] INFO c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017
2020-09-30 14:12:58,662 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2020-09-30 14:12:58,666 [main] INFO c.c.dashboard.config.MongoConfig - Connecting to Mongo: Mongo{options=MongoClientOptions{description='null', applicationName='null', compressors='[]', readPreference=primary, writeConcern=WriteConcern{w=null, wTimeout=null ms, fsync=null, journal=null, retryWrites=false, readConcern=com.mongodb.ReadConcern@0, codecRegistry=org.bson.codecs.configuration.ProvidersCodecRegistry@23349f4d, serverSelector=null, clusterListeners=[], commandListeners=[], minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplier=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=60000, maxConnectionLifeTime=0, connectTimeout=30000, socketTimeout=900000, socketKeepAlive=true, sslEnabled=false, sslInvalidHostNamesAllowed=false, sslContext=null, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=20000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@7ac1b2e9, dbEncoderFactory=com.mongodb.DefaultDBEncoder$1@565c4d02, socketFactory=null, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionPoolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000, maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=60000, maintenanceInitialDelayMS=0, maintenanceFrequencyMS=60000, connectionPoolListeners=[]}, socketSettings=SocketSettings{connectTimeoutMS=30000, readTimeoutMS=900000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500, serverListeners='[]', serverMonitorListeners='[]'}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTimeoutMS=20000, keepAlive=true, receiveBufferSize=0, sendBufferSize=0}}}
2020-09-30 14:12:58,684 [cluster-ClusterId{value='5f74451233ce13f1f2647d1e', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:5, serverValue:70}] to localhost:27017
2020-09-30 14:12:58,685 [cluster-ClusterId{value='5f74451233ce13f1f2647d1e', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 0, 20]}, minWireVersion=0, maxWireVersion=7, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=365528}
2020-09-30 14:12:59,452 [main] INFO o.s.s.web.DefaultSecurityFilterChain - Creating filter chain: org.springframework.security.web.util.matcher.AnyRequestMatcher@1, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@7f284218, org.springframework.security.web.context.SecurityContextPersistenceFilter@205d38da, org.springframework.security.web.header.HeaderWriterFilter@31edaa7d, org.springframework.security.web.authentication.logout.LogoutFilter@42e25b0b, com.capitalone.dashboard.auth.apitoken.ApiTokenRequestFilter@6af00a34, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6dd7b5a3, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@48b67364, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@407a7f2a, org.springframework.security.web.session.SessionManagementFilter@3336e6b6, org.springframework.security.web.access.ExceptionTranslationFilter@7ba8c737, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@1df8b5b8]
2020-09-30 14:12:59,528 [main] INFO o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2020-09-30 14:12:59,529 [main] INFO o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2020-09-30 14:12:59,578 [main] INFO o.s.w.s.h.SimpleUrlHandlerMapping - Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2020-09-30 14:12:59,647 [main] INFO o.s.w.s.m.m.a.RequestMappingHandlerAdapter - Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@75a1cd57: startup date [Wed Sep 30 14:12:53 IST 2020]; root of context hierarchy
2020-09-30 14:13:00,129 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Registering beans for JMX exposure on startup
2020-09-30 14:13:00,142 [main] INFO o.a.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8080"]
2020-09-30 14:13:00,147 [main] ERROR o.a.catalina.core.StandardService - Failed to start connector [Connector[HTTP/1.1-8080]]
org.apache.catalina.LifecycleException: Protocol handler start failed
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1102)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225)
at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.addPreviouslyRemovedConnectors(TomcatEmbeddedServletContainer.java:256)
at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.start(TomcatEmbeddedServletContainer.java:203)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.startEmbeddedServletContainer(EmbeddedWebApplicationContext.java:289)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:145)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:123)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:666)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:353)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:300)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1082)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1071)
at com.capitalone.dashboard.Application.main(Application.java:16)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:51)
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52)
Caused by: java.net.BindException: Address already in use
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:433)
at sun.nio.ch.Net.bind(Net.java:425)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:220)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:85)
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:221)
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1191)
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:597)
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1100)
... 22 common frames omitted
2020-09-30 14:13:00,150 [main] INFO o.a.coyote.http11.Http11NioProtocol - Pausing ProtocolHandler ["http-nio-8080"]
2020-09-30 14:13:00,151 [main] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat]
2020-09-30 14:13:00,155 [localhost-startStop-1] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [MaintenanceTimer-1-thread-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)
2020-09-30 14:13:00,156 [localhost-startStop-1] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [cluster-ClusterId{value='5f74451033ce13f1f2647d1b', description='null'}-localhost:27017] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
com.mongodb.connection.DefaultServerMonitor$ServerMonitorRunnable.waitForSignalOrTimeout(DefaultServerMonitor.java:226)
com.mongodb.connection.DefaultServerMonitor$ServerMonitorRunnable.waitForNext(DefaultServerMonitor.java:207)
com.mongodb.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:154)
java.lang.Thread.run(Thread.java:748)
2020-09-30 14:13:00,156 [localhost-startStop-1] WARN o.a.c.loader.WebappClassLoaderBase - The web application [ROOT] appears to have started a thread named [CleanCursors-2-thread-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)
2020-09-30 14:13:00,161 [main] INFO o.apache.catalina.util.LifecycleBase - The stop() method was called on component [StandardServer[-1]] after stop() had already been called. The second call will be ignored.
2020-09-30 14:13:00,162 [main] INFO o.a.coyote.http11.Http11NioProtocol - Stopping ProtocolHandler ["http-nio-8080"]
2020-09-30 14:13:00,162 [main] INFO o.a.coyote.http11.Http11NioProtocol - Destroying ProtocolHandler ["http-nio-8080"]
2020-09-30 14:13:00,164 [main] INFO o.s.b.a.l.AutoConfigurationReportLoggingInitializer -

Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2020-09-30 14:13:00,168 [main] ERROR o.s.b.d.LoggingFailureAnalysisReporter -


APPLICATION FAILED TO START


Description:

The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured.

Action:

Verify the connector's configuration, identify and stop any process that's listening on port 8080, or configure this application to listen on another port.

2020-09-30 14:13:00,169 [main] INFO o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext - Closing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@75a1cd57: startup date [Wed Sep 30 14:12:53 IST 2020]; root of context hierarchy
2020-09-30 14:13:00,170 [main] INFO o.s.j.e.a.AnnotationMBeanExporter - Unregistering JMX-exposed beans on shutdown
2020-09-30 14:13:00,179 [main] INFO o.s.s.c.ThreadPoolTaskScheduler - Shutting down ExecutorService 'taskScheduler'

Appreciate any help

Jenkins Collector Issue: build url returned by Jenkins and the Jenkins instance url in your Hygieia configuration do not match

Hi There, I have set up Hygieia in my local system and tried connecting to Jenkins running in my local system.

Please note that authentication is disabled in my local Jenkins, that's why I kept it blank.

My local instance of Jenkins is running locally, please see the snapshot attached.
image

Application Properties:

Jenkins server (required) - Can provide multiple

jenkins.servers[0]=http://localhost:9080/

If using username/token for API authentication

(required for Cloudbees Jenkins Ops Center) For example,

#jenkins.servers[1]=http://username:[email protected]

Another option: If using same username/password Jenkins auth,

set username/apiKey to use HTTP Basic Auth (blank=no auth)

jenkins.usernames[0]=
jenkins.apiKeys[0]=

Determines if build console log is collected - defaults to false

jenkins.saveLog=true

Log Stack Below:

2020-07-16 11:04:20,286 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Finished 1s
2020-07-16 11:05:00,001 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2020-07-16 11:05:00,033 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2020-07-16 11:05:00,033 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - http://localhost:9080/
2020-07-16 11:05:00,033 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2020-07-16 11:05:00,040 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - Fetching jobs 0/13 pageSize 1000...
2020-07-16 11:05:00,067 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Fetched jobs 0s
2020-07-16 11:05:00,067 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - New jobs 0 0s
2020-07-16 11:05:00,079 [taskScheduler-1] WARN c.c.d.collector.DefaultHudsonClient - Credentials for the following url was not found. This could happen if the domain/subdomain/IP address in the build url returned by Jenkins and the Jenkins instance url in your Hygieia configuration do not match: "http://localhost:8080/job/aep_parametrised_pipeline05/1/api/json?tree=number,url,timestamp,duration,building,result,culprits[fullName],changeSets[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind],changeSet[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind,revisions[module,revision]],actions[lastBuiltRevision[SHA1,branch[SHA1,name]],remoteUrls]"
2020-07-16 11:05:00,087 [taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - Client exception loading build details: 404 Not Found. URL =http://localhost:8080/job/aep_parametrised_pipeline05/1/
2020-07-16 11:05:00,101 [taskScheduler-1] WARN c.c.d.collector.DefaultHudsonClient - Credentials for the following url was not found. This could happen if the domain/subdomain/IP address in the build url returned by Jenkins and the Jenkins instance url in your Hygieia configuration do not match: "http://localhost:8080/job/aep_parametrised_pipeline05/2/api/json?tree=number,url,timestamp,duration,building,result,culprits[fullName],changeSets[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind],changeSet[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind,revisions[module,revision]],actions[lastBuiltRevision[SHA1,branch[SHA1,name]],remoteUrls]"
2020-07-16 11:05:00,108 [taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - Client exception loading build details: 404 Not Found. URL =http://localhost:8080/job/aep_parametrised_pipeline05/2/
2020-07-16 11:05:00,124 [taskScheduler-1] WARN c.c.d.collector.DefaultHudsonClient - Credentials for the following url was not found. This could happen if the domain/subdomain/IP address in the build url returned by Jenkins and the Jenkins instance url in your Hygieia configuration do not match: "http://localhost:8080/job/aep_parametrised_pipeline05/3/api/json?tree=number,url,timestamp,duration,building,result,culprits[fullName],changeSets[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind],changeSet[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind,revisions[module,revision]],actions[lastBuiltRevision[SHA1,branch[SHA1,name]],remoteUrls]"
2020-07-16 11:05:00,136 [taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - Client exception loading build details: 404 Not Found. URL =http://localhost:8080/job/aep_parametrised_pipeline05/3/
2020-07-16 11:05:00,148 [taskScheduler-1] WARN c.c.d.collector.DefaultHudsonClient - Credentials for the following url was not found. This could happen if the domain/subdomain/IP address in the build url returned by Jenkins and the Jenkins instance url in your Hygieia configuration do not match: "http://localhost:8080/job/aep_parametrised_pipeline05/4/api/json?tree=number,url,timestamp,duration,building,result,culprits[fullName],changeSets[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind],changeSet[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind,revisions[module,revision]],actions[lastBuiltRevision[SHA1,branch[SHA1,name]],remoteUrls]"

Jenkins Collector Error due to old credentials - 403 Access Denied

I use the below command to start the Jenkins collector. This new property file completely different creds to the old one. But still in the logs i see the old password and user printed. Not sure if it is reading the property file or where it is taking the old credentials from. Those credentials have already expired.

java -jar jenkins.jar --spring.config.name=jenkins --spring.config.location=absolutepath/jenkins_dp5252.properties

Below from the logs,

2019-07-08 22:10:00,001 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Running Collector: Hudson
2019-07-08 22:10:00,692 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-07-08 22:10:00,692 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - Jenkins endpoint
2019-07-08 22:10:00,692 [taskScheduler-1] INFO c.c.d.collector.CollectorTask - -----------------------------------
2019-07-08 22:10:00,693 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - first userrrrrrrrrrrrrrrrrrrrrrrrrrrrInfo...: null
2019-07-08 22:10:00,693 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - In isEmpty.....usernames... oldusername
2019-07-08 22:10:00,694 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - In isEmpty.....apiKeys... oldpreviouspassword
2019-07-08 22:10:00,698 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - In isEmpty.....sUrl... jenkinsendpoint/api/json?tree=jobs
2019-07-08 22:10:00,699 [taskScheduler-1] INFO c.c.d.collector.DefaultHudsonClient - second userrrrrrrrrrrrrrrrrrrrrrrrrrrrInfo...After isEmpty oldusername:oldpassword
2019-07-08 22:10:01,831 [taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - client exception loading jobs
org.springframework.web.client.HttpClientErrorException: 403 Access Denied
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:91) ~[spring-web-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:641) ~[spring-web-4.2.5.RELEASE.jar!/:4.2.5.RELEASE]

Cannot set username and apikey to make the collector run successfulyy

Hi,

I have some problems to make this collector run successfully. I have followed your instructions regarding applications.properties, adding "jenkins.usernames[0]" as my jenkins username and "jenkins.apiKeys[0]" as the username's api token. However it seems to have some 403 forbidden error when grabbing data from my Jenkins server. However, when I gave full authentication to Anonymous Users, it would work.

Here is my Application.properties file:

# Database Name
dbname=dashboarddb

# Database HostName - default is localhost
dbhost=localhost

# Database Port - default is 27017
dbport=27017

# MongoDB replicaset
# dbreplicaset=[false if you are not using MongoDB replicaset]
# dbhostport=[host1:port1,host2:port2,host3:port3]

# Database Username - default is blank
dbusername=

# Database Password - default is blank
dbpassword=

# Collector schedule (required)
jenkins.cron=0/5 * * * * *

# The page size
jenkins.pageSize=1000

# The folder depth - default is 10
jenkins.folderDepth=10

# Jenkins server (required) - Can provide multiple
jenkins.servers[0]=http://jenkinsserver:8080

# If using username/token for API authentication
# (required for Cloudbees Jenkins Ops Center) For example,
# jenkins.servers[0]=http://ct_builder:1119e3879bcb7dc00b1f4b87c51a88a353@jenkinsserver:8080

# Another option: If using same username/password Jenkins auth,
# set username/apiKey to use HTTP Basic Auth (blank=no auth)
jenkins.usernames[0]=djaioc
jenkins.apiKeys[0]=abcdefg

# Determines if build console log is collected - defaults to false
jenkins.saveLog=true

# Search criteria enabled via properties (max search criteria = 2)
jenkins.searchFields[0]= options.jobName
jenkins.searchFields[1]= niceName

# Timeout values
jenkins.connectTimeout=20000
jenkins.readTimeout=20000

Here's the error:

2020-01-19 14:31:15,550 [taskScheduler-1] WARN  c.c.d.collector.DefaultHudsonClient - Credentials for the following url was not found. This could happen if the domain/su
bdomain/IP address in the build url returned by Jenkins and the Jenkins instance url in your Hygieia configuration do not match: "http://JenkinsServer:8080/job/AUTO_Depl
oy/1/api/json?tree=number,url,timestamp,duration,building,result,culprits[fullName],changeSets[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],ki
nd],changeSet[items[user,author[fullName],revision,id,msg,timestamp,date,paths[file]],kind,revisions[module,revision]],actions[lastBuiltRevision[SHA1,branch[SHA1,name]],
remoteUrls]"
2020-01-19 14:31:15,554 [taskScheduler-1] ERROR c.c.d.collector.DefaultHudsonClient - Client exception loading build details: 403 Forbidden. URL =http://JenkinsServer:80
80/job/AUTO_Deploy/1/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.