cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Deepanshu.Grover
AppDynamics Team (Retired)
Why am I seeing : 
"EUM Account <EUM_ACCOUNT_NAME>with key<EUM_ACCOUNT_KEY>could not be provisioned in the EUM PROCESSOR"?

Symptoms

When trying to re-provision the on-premise EUM license, the above error message is seen.

./bin/provision-license <path_to_license_file> 

 

Complete Stacktrace:

Provisioning license from license file

Unable to add global account names to accounts table for eum_account:<EUM_ACCOUNT_NAME>

java.sql.SQLException: Connections could not be acquired from the underlying database!

        at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)

        at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)

        at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)

        at com.appdynamics.eumcloud.data.sql.SqlDBManager.getConnection(SqlDBManager.java:69)

        at com.appdynamics.eumcloud.OnPremLicenseProvisioner.getGlobalAccountNameFromControllerDb(OnPremLicenseProvisioner.java:127)

        at com.appdynamics.eumcloud.OnPremLicenseProvisioner.provisionFromLicenseFile(OnPremLicenseProvisioner.java:157)

        at com.appdynamics.eumcloud.OnPremLicenseProvisioner.main(OnPremLicenseProvisioner.java:50)

Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.

        at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319)

        at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)

        at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)

        at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)

        ... 5 more

AccountRegistrationResult:

isValid:false, isAlreadyRegistered:true, description:Account <EUM_ACCOUNT_NAME> already registered,

EUM Account <EUM_ACCOUNT_NAME> with key <EUM_ACCOUNT_KEY>  could not be provisioned in the EUM PROCESSOR, error : Account <EUM_ACCOUNT_NAME> already registered

Diagnosis

This issue occurs as the EUM account name present in the new on-premise license file is already present inside the EUM DB.

 

Solution

To resolve this issue, please follow the following steps:

 

  1. Make a copy of your license file in <EUEM>/eum-processor/bin
  2. Make sure your <EUEM>/eum-processor/eum.properties has your controller root password for the value of onprem.controllerDbPassword
  3. Navigate to <controller>/bin and enter ./controller.sh login-db
  4. Enter use eum_db;
  5. Enter delete from accounts
  6. Enter exit
  7. From the eum-processor directory, run the following script:
    • On Linux: 
      ./bin/provision-license <path_to_license_file> 
    • On Windows:
      bin\provision-license.bat <path_to_license_file>
  8. Restart EUM processor: from <EUEM>/eum-processor enter .bin/eum.sh stop and .bin/eum.sh start
  9. Disable and re-enable EUM from Instrumentation/Configuration/End User Monitoring

Once this is done, the updated license should reflect under License page and EUM data should start flowing again.

Version history
Last update:
‎08-14-2019 12:56 PM
Updated by:
Join Us On December 10
Learn how Splunk and AppDynamics are redefining observability


Register Now!

Observe and Explore
Dive into our Community Blog for the Latest Insights and Updates!


Read the blog here