AppDynamics Pivotal Cloud Foundry Tile FAQs

General FAQs

What is included in the AppDynamics Application Performance Monitoring for PCF tile?

  • AppDynamics Service Broker — for application instrumentation
  • AppDynamics Analytics — for transaction analytics

I am only interested in APM. Should I configure Transaction Analytics?

For now, provide dummy values in the tile forms.

AppDynamics and Pivotal have a selective deployment option which involves using two tiles, the AppDynamics Application Performance Monitoring for PCF tile and the AppDynamics Application Analytics for PCF tile for Transaction Analytics. Follow the steps outlined in the docs to install and configure Application Performance Monitoring (APM) and Transaction Analytics.

How do I configure SSL (On-Prem Controller deployment)?

Make sure you have included the entire certificate chain in the security config of the BOSH Director tile. This ensures that all BOSH deployments and Diego cells can access those certificates automatically while doing SSL validation. AppDynamics deployments automatically reads the certificates and imports them into correct keystores. No additional steps are needed. Follow the exact format with no comments, as specified in the Pivotal Opsi Manager documentation. Enable all SSL checkboxes in Tile Configuration Forms.

How do I configure SSL (SaaS deployment)?

AppDynamics SaaS Controllers are signed with standard DigiCerts CA. They are already included in the BOSH deployments and application containers.

Enable all SSL checkboxes in Tile Configuration Forms.

My installation failed. What should I send to AppDynamics Support?

Collect the error logs from the Ops Manager installation page and provide the entire deployment log.

I am using the v1.x tile and planning to upgrade to v4.4.x. Should I uninstall v1.x before installing v4.4.x?

Yes, since the platform metrics framework has been rewritten to use the new Firehose nozzle instead of JMX Bridge.

Will my apps that are bound to older AppDynamics Service Broker instances lose instrumentation while I uninstall v1.x and install v4.4.x?

No. The apps are oblivious to tile installs and uninstalls. After the apps are bound, the AppDynamics configuration are present until the apps are restaged.

How do I upgrade from v1.x to v4.4.x?

  1. Record the names of your AppDynamics service instances and their corresponding plans before uninstalling your v1.x tile installation.

  2. Uninstall your v1.x tile installation.

  3. Install the v4.4.x tile with the plans you recorded.

  4. Create service instances for the plans you recorded.

I have carried out the procedure above. How do I restage my apps?

No additional steps are required to restage apps.

AppDynamics Service Broker and Buildpacks - APM FAQs

What is an AppDynamics Service Broker?

An AppDynamics Service Broker implements Service Broker API and provides a credential service for apps to bind. When bound, the necessary AppDynamics configuration is automatically imported into the app environment for buildpacks to read and configure AppDynamics agents.

Can I bind apps to AppDynamics without the Service Broker and still instrument apps?

Yes. You can bind a user provided service by creating a user provided service. Do the following:

  1. Run cf cups SERVICE-NAME -p '{"account-access-key":"ACCESS-KEY", "account-name":"ACCOUNT", "application-name":"APP", "host-name":"HOST", "plan-description":"PLAN", "plan-name":"NAME", "port":"PORT", "ssl-enabled":TRUE|FALSE'

  2. Bind the app to the user-provided service and restage.

Which language PCF applications have AppDynamics support?

Refer AppDynamics Workflow documentation

I have a deployment with no internet access. How do I push the apps?

You can use the Java buildpack shipped with CF environments directly. The AppDynamics support has been merged. Any Java buildpack version released after Nov 2017 should work.

In addition, you must place the AppDynamics agent downloaded from packages.appdynamics.com/java/index.yml. See the Offline Package section of the Cloud Foundry Java Buildpack documentation.

How do I customize AppName, TierName, and NodeName?

AppDynamics Buildpacks auto-generate App, Tier, and Node names by looking into the deployed environment. You can customize this auto-generation by setting the configuration environment variables.

To override the following environment, run cf set-env APP ENV-NAME ENV-VALUE.

AGENT APPLICATION ENV VARIABLE TIER ENV VARIABLE NODE ENV VARIABLE
Python APPD_APP_NAME APPD_TIER_NAME APPD_NODE_NAME
Java APPDYNAMICS_AGENT_APPLICATION_NAME APPDYNAMICS_AGENT_TIER_NAME APPDYNAMICS_AGENT_NODE_NAME
NodeJS APPDYNAMICS_AGENT_APPLICATION_NAME APPDYNAMICS_AGENT_TIER_NAME APPDYNAMICS_AGENT_NODE_NAME
Golang APPD_APP_NAME APPD_TIER_NAME APPD_NODE_NAME

How do I configure the Java buildpack to fetch a particular agent version?

By default, Buildpack fetches the latest available agent entry in packages.appdynamics.com/java/index.yml. You can override the default behavior by setting these variables specified under Configuration in the AppDynamics Agent Framework README.

  • To use a specific version, set the env JBP_CONFIG_APP_DYNAMICS_AGENT:

    cf set-env YOUR-APP-NAME JBP_CONFIG_APP_DYNAMICS_AGENT '{version: 4.4.111}'

  • To use another package index, set the env JBP_CONFIG_APP_DYNAMICS_AGENT:

    cf set-env YOUR-APP-NAME JBP_CONFIG_APP_DYNAMICS_AGENT '{repository_root: "https://exmple.duckdns.org"}'

The Java buildpack does not fetch a particular agent version. What should I do?

If you are using the default package index, verify that the version in question is present by running curl -sSL https://packages.appdynamics.com/java/index.yml -H "user-agent: Ruby" -H "accept-encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3" -H "accept: */*".

If it does not show up in the output, reach out to AppDynamics Support or the #java-buildpack channel of the Cloud Foundry Slack.

My app push fails. What should I send to AppDynamics Support?

  • cf push logs
  • App manifest, if present

My app is running, but I do not see any metrics in Controller. How do I troubleshoot?

Run cf env application and see if the VCAP_SERVICES environment variable has AppDynamics information. * If no, bind the app to AppDynamics service and restage. * If yes, ensure all credentials (Controller info, key, SSL) are correctly set. If you are using SSL, ensure it is enabled (“ssl: true”) in VCAP_SERVICES.

What should I send to AppDynamics Support?

  • cf logs {appname}
  • cf env {appname}
  • cf ssh {appname}
    • Find the process ID of the running app by running ps aux.
    • cat /proc/{pid}/environ
    • Agent logs
AGENT LOGS
NODE.JS /tmp/appd/{hash}
JAVA /app/.java-buildpack/app_dynamics_agent/ver/logs
Create a pull request or raise an issue on the source for this page in GitHub