Setup AppDynamics integration
Last updated
Was this helpful?
Last updated
Was this helpful?
Akamas leverages the CSV telemetry provider to integrate a variety of data sources, such as AppDynamics.
All integrations based on this provider consist of two phases:
Metric extraction from AppDynamics
Metric import via CSV provider
The first phase is composed of a set of scripts launched by a workflow task that interacts with the AppDynamics API and saves the metrics of interest for the experiment in a CSV file with a proper format.
The second phase is executed by the CSV telemetry provider, which imports the metrics from the CSV file.
To set up the integration, you need:
A host (or a container) that can be accessed via SSH from Akamas to run the extraction scripts and host the generated CSV file.
The host must have the following packages installed:
python 3.10+
5.4.1
2.25.1
1.26.16
The host must be able to connect to AppDynamics APIs
A token to authenticate to your AppDynamics account and extract the metrics
The script required to set up this integration is not currently publicly available. To obtain them, please contact support@akamas.io.
You can deploy the scripts once and then re-use them for multiple studies as all the required configurations can be provided as arguments which can be changed directly in the akamas workflow yaml or from the UI.
To deploy the scripts, extract the archive to a location of your choice on the host. The files must have the following organisation:
You can verify that the script can be executed correctly by running the following command.
The script accepts the following parameters:
Filename [-f, --filename]: [Required] name that must have the generated output file (specify also the extension .csv)
Component [-c, --component]: [Required] name of the Akamas component we want to associate the metrics with
Application [-a, --application]: [Required] name of the AppDynamics application for which we want to retrieve the metrics
Tier [-t, --tier]: [Required] name of the AppDynamics tier for which we want to retrieve the metrics
Node [-n, --node]: [Required] name of the AppDynamics node for which we want to retrieve the metrics
StartTime [-st, --startTime]: [Required] time for which we want to start to retrieve the data
EndTime [-et, --endTime]: [Optional] time for which we want to start to retrieve the data (Default value = now)
User [-u, --user]: [Optional] username to connect to the environment (Default value -> value taken from mv_config file)
Password [-p, --password]: [Optional] password to connect to the environment (Default value -> value taken from mv_config file)
Here you can find a subset of the supported metrics. Metrics from AppDynamics are mapped to metrics from the Akamas optimisation pack. In general, all metrics of AppDynamics can be imported in Akamas if inserted in the config file
jvmRuntimePlatform
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|JVM|Memory|Heap|Max Available (MB)
java-openjdk-XX
jvm_heap_size
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|JVM|Memory|Heap|Current Usage (MB)
java-openjdk-XX
jvm_heap_used
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|JVM|Memory|Heap|Used %
java-openjdk-XX
jvm_heap_util
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|JVM|Garbage Collection|GC Time Spent Per Min (ms)
java-openjdk-XX
jvm_gc_time
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|JVM|Threads|Current No. of Threads
java-openjdk-XX
jvm_threads_current
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|JVM|Process CPU Usage %
java-openjdk-XX
cpu_util
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|Hardware Resources|Memory|Used (MB)
java-openjdk-XX
mem_used
Linux
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|Hardware Resources|Network|Outgoing KB
Ubuntu XX.XX
network_out_bytes_details
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|Hardware Resources|Network|Incoming KB
Ubuntu XX.XX
network_in_bytes_details
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|Hardware Resources|Disks|KB read/sec
Ubuntu XX.XX
disk_read_bytes
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|Hardware Resources|Disks|KB written/sec
Ubuntu XX.XX
disk_write_bytes
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|Hardware Resources|Memory|Used %
Ubuntu XX.XX
mem_util
Application Infrastructure Performance|{tier}|Individual Nodes|{node}|Hardware Resources|Memory|Total (MB)
Ubuntu XX.XX
mem_total
Overall Application Performance|Calls per Minute
Web Application
transactions_throughput
Overall Application Performance|Errors per Minute
Web Application
transactions_error_throughput
Overall Application Performance|Average Response Time (ms)
Web Application
transactions_response_time