analytics-client plugin errors out when Enabled

John Verburg July 18, 2019

Hi team, 

 

We have found out that there is a problem with Analytics Client Plugin errors out with the trace below when enabled. This error prevents plugin to start. 

It was found that cache might be a cause, so cache was cleaned up from the server, but the problem is still there. 

This error prevents Bamboo to upgrade. Apparently, upgrade enables all the plugins and thus analytics plugin errors out timeout message preventing bamboo from the successful start.  

OS: Centos 7

Bamboo: 6.4.1

I would appreciate any ideas or help since there are not that many information about similar cases online. 

 

Thank you. 

 


2019-07-18 17:28:53,576 ERROR [ThreadPoolAsyncTaskExecutor::Thread 38] [OsgiPlugin] Unable to start the plugin container for plugin 'com.atlassian.analytics.analytics-client'


org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'productEventListener' defined in URL [bundle://20.0:0/META-INF/spring/atlassian-plugins-components.xml]: Unsatisfied dependency expressed through constructor argument with index 5 of type [com.atlassian.analytics.client.logger.AnalyticsLogger]: : Error creating bean with name 'analyticsLogger' defined in URL [bundle://20.0:0/META-INF/spring/atlassian-plugins-components.xml]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.analytics.client.logger.Log4jAnalyticsLogger]: Constructor threw exception; nested exception is java.lang.NullPointerException; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'analyticsLogger' defined in URL [bundle://20.0:0/META-INF/spring/atlassian-plugins-components.xml]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.analytics.client.logger.Log4jAnalyticsLogger]: Constructor threw exception; nested exception is java.lang.NullPointerException

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:305)

at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:301)

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)

at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)

at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:834)

at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.access$1600(AbstractDelegatedExecutionApplicationContext.java:60)

at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:325)

at org.eclipse.gemini.blueprint.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)

at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:290)

at org.eclipse.gemini.blueprint.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:137)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:748)

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'analyticsLogger' defined in URL [bundle://20.0:0/META-INF/spring/atlassian-plugins-components.xml]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.analytics.client.logger.Log4jAnalyticsLogger]: Constructor threw exception; nested exception is java.lang.NullPointerException

at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:275)

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:305)

at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:301)

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)

at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1145)

at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1069)

at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:967)

at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:813)

at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)

... 19 more

Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.analytics.client.logger.Log4jAnalyticsLogger]: Constructor threw exception; nested exception is java.lang.NullPointerException

at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:163)

at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:122)

at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:267)

... 32 more

Caused by: java.lang.NullPointerException

at uk.org.simonsite.log4j.helpers.FileHelper.isReadable(FileHelper.java:115)

at uk.org.simonsite.log4j.appender.TimeBasedRoller.initNextRolloverTime(TimeBasedRoller.java:148)

at uk.org.simonsite.log4j.appender.TimeBasedRoller.<init>(TimeBasedRoller.java:75)

at uk.org.simonsite.log4j.appender.CompositeRoller.<init>(CompositeRoller.java:37)

at uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender.activateOptions(TimeAndSizeRollingAppender.java:441)

at com.atlassian.analytics.client.logger.Log4jAnalyticsLogger.initAnalyticsAppender(Log4jAnalyticsLogger.java:94)

at com.atlassian.analytics.client.logger.Log4jAnalyticsLogger.<init>(Log4jAnalyticsLogger.java:57)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)

 

2 answers

1 accepted

0 votes
Answer accepted
Daniel Santos
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
July 31, 2019

Hi @John Verburg

According to the below stack trace line, I think there is a good chance that this problem is caused by a permission issue:

 at uk.org.simonsite.log4j.helpers.FileHelper.isReadable(FileHelper.java:115)

I would suggest investigating two possible causes:

  1. Make sure all the files in both <Bamboo_Home> and <Bamboo_Install> are owned by the user running the Bamboo server process:
    chown -R <bamboo_user> <Bamboo_Home>
    chown -R <bamboo_user> <Bamboo_Install>
  2. I saw in a different post that the SELinux feature could be affecting this as well.
    Solved: How to troubleshoot Confluence, application starts...Atlassian Community 

I hope that helps.

0 votes
John Verburg September 4, 2019

Hi Daniel, 

Thank you for support. This fix worked! 

Daniel Santos
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
September 4, 2019

That is Great to hear!
I'll mark the answer as accepted in this case.
Have a good one!

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events