AIP Console - Extend - Offline extend Hostname of machine hosting Offline extend is changed - ERROR com.castsoftware.aip.node.services.monitoring.MonitoringService - Failed to access extend service


Purpose (problem description)

The page lists the explanation of the scenerio when you have changed the hostname of the machine where the offline extend server is hosted and the console is no more able to communicate with the Extend offline server.

The error seen is 
ERROR com.castsoftware.aip.node.services.monitoring.MonitoringService - Failed to access extend service
com.castsoftware.webi.common.services.extensions.ExtendServerException: Failed to connect to extend server 

Observed in CAST Version


Release

Yes/No

>=1.28.0(tick)
Observed in Extend proxy

Extend proxy server

version

Extend proxy server2.0.0-funcrel
Step by Step scenario
  1. Try to configure Online Extend with AIP Console on a machine running proxy that requires authentication
  2. Add version or any step which required extension server to be communicated for download of extension
Error code block


09:00:51.457 [main] INFO com.castsoftware.aip.core.utils.TenantUtils - Using default tenantId
09:01:18.773 [main] ERROR com.castsoftware.aip.node.services.monitoring.MonitoringService - Failed to access extend service
com.castsoftware.webi.common.services.extensions.ExtendServerException: Failed to connect to extend server
at com.castsoftware.webi.common.services.extensions.ExtendClientImpl.ping(ExtendClientImpl.java:68) ~[cast-common-services-1.19.1.jar!/:1.19.1]
at com.castsoftware.aip.node.services.extensions.ExtensionsServiceImpl.pingExtendService(ExtensionsServiceImpl.java:685) ~[aip-node-services-1.19.1.jar!/:1.19.1]
at com.castsoftware.aip.node.services.monitoring.MonitoringService.checkExtendServiceAccess(MonitoringService.java:92) ~[aip-node-services-1.19.1.jar!/:1.19.1]
at com.castsoftware.aip.node.services.monitoring.MonitoringService.getServerInfo(MonitoringService.java:77) ~[aip-node-services-1.19.1.jar!/:1.19.1]
at com.castsoftware.aip.node.services.monitoring.MonitoringService.afterPropertiesSet(MonitoringService.java:68) ~[aip-node-services-1.19.1.jar!/:1.19.1]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1855) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1792) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:595) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1287) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1207) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:130) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1422) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323) ~[spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) [spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321) [spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) [spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:879) [spring-beans-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878) [spring-context-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550) [spring-context-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) [spring-boot-2.2.5.RELEASE.jar!/:2.2.5.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747) [spring-boot-2.2.5.RELEASE.jar!/:2.2.5.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) [spring-boot-2.2.5.RELEASE.jar!/:2.2.5.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-2.2.5.RELEASE.jar!/:2.2.5.RELEASE]
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:140) [spring-boot-2.2.5.RELEASE.jar!/:2.2.5.RELEASE]
at com.castsoftware.aip.node.AipNodeApplication.main(AipNodeApplication.java:24) [classes!/:1.19.1-72]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_271]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_271]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_271]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_271]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [aip-node-app.jar:1.19.1-72]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [aip-node-app.jar:1.19.1-72]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:51) [aip-node-app.jar:1.19.1-72]
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52) [aip-node-app.jar:1.19.1-72]
Caused by: org.springframework.web.client.ResourceAccessException: I/O error on GET request for "http://NDCWOZWCAPP02:8085/api/info/build-version": Connection timed out: connect; nested exception is java.net.ConnectException: Connection timed out: connect
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:748) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:674) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:583) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at com.castsoftware.webi.common.services.extensions.ExtendClientImpl.ping(ExtendClientImpl.java:66) ~[cast-common-services-1.19.1.jar!/:1.19.1]
... 42 more
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method) ~[?:1.8.0_271]
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) ~[?:1.8.0_271]
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) ~[?:1.8.0_271]
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) ~[?:1.8.0_271]
at java.net.AbstractPlainSocketImpl.connect(Unknown Source) ~[?:1.8.0_271]
at java.net.PlainSocketImpl.connect(Unknown Source) ~[?:1.8.0_271]
at java.net.SocksSocketImpl.connect(Unknown Source) ~[?:1.8.0_271]
at java.net.Socket.connect(Unknown Source) ~[?:1.8.0_271]
at sun.net.NetworkClient.doConnect(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.http.HttpClient.openServer(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.http.HttpClient.openServer(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.http.HttpClient.<init>(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.http.HttpClient.New(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.http.HttpClient.New(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) ~[?:1.8.0_271]
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) ~[?:1.8.0_271]
at org.springframework.http.client.SimpleBufferingClientHttpRequest.executeInternal(SimpleBufferingClientHttpRequest.java:76) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:53) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:739) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:674) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:583) ~[spring-web-5.2.4.RELEASE.jar!/:5.2.4.RELEASE]
at com.castsoftware.webi.common.services.extensions.ExtendClientImpl.ping(ExtendClientImpl.java:66) ~[cast-common-services-1.19.1.jar!/:1.19.1]
... 42 moreThis message explains that the proxy setup on your machine requires authentication and it is not currently supported by AIP Console. 
 


How to solve:

As observed adding a version or any step which communicates with Extend server to download the extension is failing, as the Hostname of the servers running offline extends services is changed.
To solve the issue :

  1. Update the config.json file in the offline extend installation folder with the new Hostname and the same is configured in the AIP Console.                                                       
  2. Now update the Global configuration for the Extend offline URL. Navigate to CAST Extend local server settings using the CAST Extend - System Settings in the Administration Center.
  3. Perform add version or any step which requires the download of extension from the extend offline server.
  4. If the problem you are facing does not match any case listed in this page, report your problem to CAST Technical Support and provide the following Relevant input for CAST Technical Support to reproduce the issue.


Relevant input

Related Pages
  1. You need to use the Offline Extend along with your AIP Console to download the Extensions. The following document will help you with the same Install CAST Extend Offline   
Notes/comments

Ticket # 40544