AWS AutoScaling Monitoring Extension

Use Case

Captures statistics for AutoScalingGroups from Amazon CloudWatch and displays them in the AppDynamics Metric Browser.


  1. Before the extension is installed, the prerequisites mentioned here need to be met. Please do not proceed with the extension installation if the specified prerequisites are not met.
  2. The following permissions are needed to the AWS user whose accessKey and secretKey ae going to be used in the extension.
    cloudwatch:ListMetrics, cloudwatch:GetMetricStatistics
    The alternative to providing keys in the extension is installing the machine agent with the extension on an AWS EC2 instance and providing the instance with a role that has the above permissions.

Agent Compatibility:

Note: This extension is compatible with Machine Agent version 4.5.13 or later.

  1. If you are seeing warning messages while starting the Machine Agent, update the http-client and http-core JARs in {MACHINE_AGENT_HOME}/monitorsLibs to httpclient-4.5.9 and httpcore-4.4.12 to make this warning go away.

  2. To make this extension work on Machine Agent < 4.5.13, the http-client and http-core JARs in {MACHINE_AGENT_HOME}/monitorsLibs need to be updated to httpclient-4.5.9 and httpcore-4.4.12.

Installing the extension

  1. Download and unzip the file into <MACHINE_AGENT_HOME>/monitors/ directory.
  2. Configure the extension by referring to the below section.
  3. Restart the machine agent.

Configuring the extension using config.yml

Configure the AWS AutoScaling monitoring extension by editing the config.yml file in <MACHINE_AGENT_HOME>/monitors/AWSAutoScalingMonitor/

  1. Edit the file config.yml located at <MachineAgent_Dir>/monitors/AWSAutoScalingMonitor The metricPrefix of the extension has to be configured as specified here. Please make sure that the right metricPrefix is chosen based on your machine agent deployment, otherwise this could lead to metrics not being visible in the controller.
  2. Configure the cloud watch monitoring level. This is required to reduce the number of API calls to cloudwatch. Basic will fire CloudWatch API calls every 5 minutes. Detailed will fire CloudWatch API calls every 1 minutes
    cloudWatchMonitoring: "Basic"
    If you want to run the extension with a further delay, comment the "cloudWatchMonitoring" and use the following field which takes in the number of minutes after which the extension should call the cloudwatch metrics.
  3. Configure the AWS account by specifying the awsAccessKey, awsSecretKey of the AWS account. displayAccountName(required) and regions(required) also needs to be configured.

    For example,

      - awsAccessKey: "XXXXXXXX1"
        awsSecretKey: "XXXXXXXXXX1"
        displayAccountName: "TestAccount_1"
        regions: ["us-east-1","us-west-1","us-west-2"]

    NOTE: If you have the machine agent with extension installed on an AWS EC2 instance which has an assigned role with appropriate permissions as specified in the prerequisites section, then the awsAccessKey and awsSecretKey fields should be left empty as follows:

      - awsAccessKey: ""
        awsSecretKey: ""
        displayAccountName: "TestAccount_1"
        regions: ["us-east-1","us-west-1","us-west-2"]

  4. If you know for which AutoScaling you need the metrics for, the you can monitor only those AutoScalingGroups. This can be done by secifying the patterns of the AutoScalingGroup names that needs to be minitored

    For example, If you want only AutoScalingGroup who name is exactly "sample" as well as the AutoScalingGroups with the name starting with demo, then you can configure it as below

    autoScalingGroupNames: ["^sample$", "^demo"]


The following metrics are available at each AutoScalingGroup level:

Apart from the above metrics, the extension also gives a metric called "API calls" at the extension level, that gives out the number of cloudwatch API calls per minutes from the extension.


Workbench is an inbuilt feature provided with each extension in order to assist you to fine tune the extension setup before you actually deploy it on the controller. Please review the following document on How to use the Extensions WorkBench


Please follow the steps specified in the Troubleshooting document to debug problems faced while using the extension.


Always feel free to fork and contribute any changes directly via GitHub.


Current Version:


Agent compatibility:

4.5.13 or later

Controller compatibility:

4.4 or later

Last Update:

May 1, 2020