APM Insight Dashboard


Overview

The performance of complex, distributed applications can be efficiently monitored only when data is presented in a simple and impactful manner. APM Insight's customized dashboards help you understand your applications at a single glance!

The performance metrics of the applications being monitored in APM Insight is displayed under the APM tab. These metrics include mainly:

  • Application Performance Index (APDEX)
  • Response Time
  • Throughput, etc.

Configure Alarms

  • In APM Insight, 'Configure Alarm' [ ] option is supported at Instance level (and not Application level) and is provided in the Instance page so that we can use it to configure Threshold and Actions.
  • By default, we fetch average data for last 5 minutes while applying threshold for the respective attributes.
  • We can update the 5 minutes interval in apminsight.properties file located under <Applications Manager Home>\working\apminsight\conf directory. [Key Name: attribute.update.timeinterval]. Restart required to apply this changes.

Enable Reports

  • In APM Insight, 'Enable Reports' [ ] option is also supported at Instance level (and not Application level) and is provided in the Instance page so that we can use it to enable/disable reports for APM Insight attributes.
  • By default, reports are enabled for all APM Insight attributes (under Setting → Enable Reports → Customer Reports → APM Insight) and can be customized based on requirement. Following are the list of reports that can be generated for APM Insight attributes:
    • Trend Analysis Report
    • At a Glance Report
    • Forecast Report
    • Inventory Report
    • Schedule Reports
    • Availability Report
    • Health Report
    • Attributes Report

Note: Common time zone should be maintained between the Applications Manager server and APM Insight agent-installed server for proper functioning.

Monitored Parameters

To view detailed performance metrics, click over the corresponding listed instance. The metrics are categorized into six different tabs for better understanding:

Monitor Information

Category Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Application Display Name Name of the application given during the time of monitor creation.
Agent Type Type of the agent running on the particular Application.
Hosts Total number of hosts for present on the particular application.
Instances Total Number of Instances present on the particular application.
Instance Display Name Name of the instance given during the time of monitor creation.
Agent Installed Path Indicates the directory where the agent is installed.
Last communicated time The timestamp when the agent last communicated with the Application Manager.
Agent Type Type of the agent running on the particular instance.
Monitor Creation Time The time at which the monitor was created.
Agent Version Indicates the agent version which is currently used.
Host The host where the agent is running on a particular instance.
Port The port where the agent is running on a particular instance.
IP Address The IP Address of the particular instance.
OS Operating System where the instance of the application is running.
OS Version Version of the operating system where the instance of the application is running.
OS Architecture Architecture of the operating system where the instance of the application is running.
Application Runtime Environment Version Environement version where the application is running.

Overview

The performance metrics of the applications being monitored in APM Insight is displayed under the Overview tab. These metrics include:

Category Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Application/Instance information Apdex It is a measure of response time based against a set threshold. Satisfied, Tolerating and Frustrated are the percentage of users under respective category.
Avg. Resp. Time The average response time of transactions for the chosen time frame.
Throughput The number of requests served per minute for the chosen time frame.
Errors (%) The proportion of error transactions to total for the chosen time frame.
Exceptions The number of exceptions that occurred during the life cycle of transactions for the chosen time frame. These are either fatal or warning category.
Agent Last Communicated The timestamp at which the agent communicated with APM.
Graph Metrics Min The minimum average value for the corresponding parameter for chosen time frame.
Max The maximum average value for the corresponding parameter for chosen time frame.
95th Percentile The 95th percentile of average values for the corresponding parameter for chosen time frame.
Average The averaged value for the corresponding parameter for chosen time frame.
Average Resp. Time The averaged value for the corresponding response time of transaction for chosen time frame.
Apdex Score A decimal values between 0 and 1 for instance or application for the chosen time frame.
Throughput (cpm) The number of requests served per minute for the chosen time frame.
Count The number of occurrences for the particular parameter for the chosen time frame.
Transaction Name The pattern how a transaction or exception or error code.
Resp. Time The value of response time for a transaction.
Exception Count The number of occurrences of exception or error code.

In addition to the above metrics, you can also view various types of transaction details and represent them as graphs/charts. These include:

Graph Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Response time broken by Components
Apdex Score
Data Throughput
Error Count (count)
Exception Count
Split up by Exception
Recent 5 Error Transactions
Top 5 Transactions by Resp. Time
Recent 5 Exception Traces

Transactions

The Transactions tab gives you transaction details pertaining to the action that consumes longer time, frequently accessed actions, tier-wise breakdown of transaction response time (Example: JVM, Database, and much more) from the application level down to the individual transaction level. You can also view various transactions that are running as Web Transaction, Background or Errors.

Below are the metrics shown in the Transactions tab:

Category Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Table Metrics Transaction Name Name of the transaction
Apdex Score The Application Performance Index (APDEX) score of the application.
Count The number of transactions that are running in the application.
Errors (%) The percentage value of the number of errors that have occurred within the application.
Avg. Response Time The average value of the time taken for the transaction to respond within the application.
Min. Response Time The minimum amount of time taken for the transaction to respond within the application.
Max. Response Time The maximum amount of time taken for the transaction to respond within the application.
Total Response Time The total amount of time taken for the transaction to respond within the application.
Avg. CPU Time The average value of the amount of time taken by the CPU to run the transaction.
Fatal The number of errors that are of 'Fatal' severity.
Avg. Bytes In (KB) The average amount of bytes that are received by that transaction within the application.
Avg. Bytes Out (KB) The average amount of bytes that are sent from that transaction within the application.
Min. Bytes In (KB) The minimum amount of bytes that are received by that transaction within the application.
Max. Bytes In (KB) The maximum amount of bytes that are received by that transaction within the application.
Total Bytes In (KB) The total amount of bytes that are received by that transaction within the application.
Min. Bytes Out (KB) The minimum amount of bytes that are sent from that transaction within the application.
Max. Bytes Out (KB) The maximum amount of bytes that are sent from that transaction within the application.
Total Bytes Out (KB) The total amount of bytes that are sent from that transaction within the application.
Graph Metrics Min The minimum average value for the corresponding parameter for chosen time frame.
Max The maximum average value for the corresponding parameter for chosen time frame.
95th Percentile The 95th percentile of average values for the corresponding parameter for chosen time frame.
Average The averaged value for the corresponding parameter for chosen time frame.
Exception Count The number of occurrences of exception or error code.
Throughput (cpm) The number of requests served per minute for the chosen time frame.
Apdex Score The Application Performance Index (APDEX) score of the application.
Count The number of transactions that are running in the application.
Resp. Time The value of response time for a transaction.
Avg. CPU Time The average value of the amount of time taken by the CPU to run the transaction.
Table Metrics - (Recent 5 Traces/Slow Traces of this Transaction) Request Time The time in which the communication was happened for the Trace
Response Time The time taken by the trace to complete its execution.
CPU Time The amount of time taken by the cpu to respond.
External Calls The total number of external call made by the trace.
Exception Count The total number of exception occurred in a transaction.
SQL Time The minimum amount of time taken for the transaction to respond within the application.
Distributed Calls The total number of external calls made by the trace in various applications.
Raw Table Data Metrics Collection Time The time in which transaction got collected
Apdex Score The Application Performance Index (APDEX) score of the application.
Average Response Time The average value of the time taken for the transaction to respond within the application.
Total Request Count The total number of transactions that are running in the application.
Errors Number of errors that have occurred within the application.

In addition to the above metrics, you can also view all the transaction details and represent them as graphs based on:

Graph Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Response time broken by Components
Request Throughput
Data Throughput
App Server Components Split Up
Split Up By Execution
Event Count
Error Count
Response time and Throughput broken by Components
Event Count

Note:
You can switch between the graphical or tabular representation of the transaction page using the Graph View and Table View buttons available at the top of the page.

Traces

The Tracing feature will provide you with insight into individual transactions that are running within your application. Transaction Traces are snapshots of transactions to help you identify performance bottlenecks by drilling down the transactions to pinpoint the cause of trouble.

Based on your configuration in apminsight.conf file, the SQL statements executed within the transaction and its stack trace are collected and displayed in tree view. Also, you can view various transactions that are running as Error Traces and Distributed Traces.

Tab Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
All Traces
Error Traces
Distributed Traces

Below are the metrics shown in the Traces tab:

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Start Time Detailed date and time at which the trace was started.
Transaction Name of the transaction on which the trace was launched.
CPU Time The amount of time taken by the CPU to respond.
Response Time The time taken by the trace to complete its execution.
Avg. Response Time Average amount of the time taken by the trace when run multiple times.
SQL Time The minimum amount of time taken for the transaction to respond within the application.
External calls Total number of external calls made by the trace.
Exception Count Total number of exceptions occurred in a transaction.
Bytes In The total number of bytes requested.
Bytes Out The total number of bytes responded.
Memory Used Total amount of memory used by the trace.
Method Count Total number of method calls executed by the trace.
Distributed calls Count Total number of external calls made by the trace in various applications.
Instance Name of the Instance.

By clicking on individual transactions, you get a detailed view of the performance of executions for the selected transaction trace along with the list of internal invocations that were performed within the transaction. Following are the list of metrics that are monitored in this view:

Summary

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
HTTP Response code Response code
HTTP Method HTTP Method
Total calls The Total Number of method calls and the total number of external calls executed by the trace.
Thread Name The name of the thread which executes the trace.
Thread ID Identifier of the thread which executes the trace.
No.of DB Queries The Number of Database Queries Executed by the trace. 
Slowest Method calls and count - Slowest Method call  The names of all the components traced with the slowest being shown first. 
Slowest Method calls and count - Count The number of times component being called.
Slowest Method calls and count - Duration The time duration the component took to executed out of the total time that the trace took to execute.
Slowest Method calls and count - Percentage Percentage value of the duration the component took to execute.
Total External calls count - External call The name of all the external call components.
Total External calls count - Count The number of times the the external component being called.
Request Parameters The Query String passed in the trace.

Following are the list of graphs shown under this tab:

Graph Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Slowest Method calls and count
Total External calls count

Trace Details

Tree View:

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Delay Time The difference between the time taken for the method call and the current method call.
Exclusive The time taken for the execution of a particular method.
Total  The time taken for the command and all its sub command took together to complete.
Metric Name of all the action performed by the trace.

Components View:

Graph Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Components View

SQL Statements

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Timestamp The time when the SQL query was executed by the trace.
Execution Time The total time for the execution of a particular method.
Query Query which is executed.
No.Of Queries The total number of queries executed.

Remote (External) Calls

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
External calls The name of all the external calls executed.
Count The number of times the external component being called

Exceptions

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Time The time at which the Exception occurred.
Severity Level of exception 
Message Error message when exception occurred.
Exception class class name of the exception
Stack Trace Stack Trace of the exception 

Other traces of this transaction

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Minimum The minimum average value for the corresponding parameter for chosen time frame.
Maximum The maximum average value for the corresponding parameter for chosen time frame. 
Average The averaged value for the corresponding parameter for the chosen time frame.
95th Percentile The 95th Percentile of the average values for the corresponding parameters for chosen time frame.

Following are the list of graphs shown under this tab:

Graph Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Transaction Response time and Throughput

Database

With APM Insight's Database feature, you can get detailed performance metrics to identify the slow database calls, database usage and overall performance of the database furnished with detailed graphical and tabular representations. By clicking on individual database operations, you get a list of web transactions that were performed by this particular table, thereby helping you to narrow down and isolate the root cause of performance slowdown.

Below are the metrics shown in the Database tab:

Table View:

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Database Operation The name of the database operation occurring within the application.
Count The number of times that database operation is running in the application.
Errors (%) The percentage value of the number of errors that have occurred within the application.
Avg. Response Time The average value of the time taken for the database operation to respond within the application.
Min. Response Time The minimum amount of time taken for the database operation to respond within the application.
Max. Response Time The maximum amount of time taken for the database operation to respond within the application.
Total Response Time The total amount of time taken for the database operation to respond within the application.
Top 5 Traces in DB
Transaction The name of the database operation occurring within the application.
SQL Time The amount of time taken for the SQL query to execute.

Graph View:

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Response Time(ms) The value of response time for a transaction.
Throughput(cpm) The number of requests served per minute for the chosen time frame.
Split(%) The percentage of database operation taken in total operation
Min The minimum average value for the corresponding parameter for chosen time frame.
Max The maximum average value for the corresponding parameter for chosen time frame.
95th Percentile The 95th percentile of average values for the corresponding parameter for chosen time frame.

In addition to the above metrics, you can also view all the database operations and represent them as graphs based on:

Graph Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Overall Database Response Time and Throughput
Database Response Time
Database Throughput by Operation
Database Operation by caller
Database Operation by Response Time
Database Operation Throughput

JVM

Applications Manager's APM Insight aids you in monitoring your Java application by monitoring your application code that are running on your JVMs. The JVM tab helps you monitor key metrics that are crucial for your Java applications and provides deep insight by visualizing the performance and representing them in tabular and graphical representations, allowing admins to gain visibility of how various resources and system parameters impact the Java application performance.

Below are the metrics shown in the JVM tab:

Summary

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
JVM CPU Usage This indicates the CPU usage of the JVM on the server.
Runtime Memory Returns the total amount of memory in the Java virtual machine.
Heap Memory
  • Eden Space - The pool from which memory is initially allocated for most objects.
  • Survivor Space - Pool containing objects that have survived GC of eden space.
  • Tenured Gen - Pool containing objects that have existed for some time in the survivor space.
Non-Heap Memory
  • Code Cache - Memory used for compilation and storage of native code.
  • Perm Gen - Holds all the reflective data of the virtual machine itself, such as class and method objects. With JVMs that use class data sharing, this generation is divided into read-only and read-write areas.
Just In Time Compiler Memory that is converted to assembler and stored for running at higher speed.
JVM Classes Count Number of Loaded and Unloaded classes.

Garbage Collector - PS Scavenge & PS MarkSweep

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Garbage Collector Live JVM statistics about garbage collector activity like the number of collected objects and time spend collecting them.

Threads

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Peak Threads Peak live thread count since the Java virtual machine started or peak was reset.
Live Threads Number of live threads currently running.
Daemon Threads Number of daemon threads currently running.
Deadlock Threads Number of threads that are in deadlock waiting to acquire object monitors.

Configuration

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Up Time The total available time of the instance.
Processor Count The total number of processors available.
Total Threads The total number of threads taken by the Instance.
Total classes The total no. of classes used by the Instance.
General
JVM Name Specifies the Java virtual machine name.
JVM Version The Java virtual machine version.
Java Arguments The input arguments passed to the Java virtual machine which does not include the arguments to the main method.
Class Version The version of Java class that is used by the system class loader to search for class files.
Classpath The Java class path that is used by the system class loader to search for class files.
Library Path The Java library path.
Boot Classpath The boot class path that is used by the bootstrap class loader to search for class files.
Host
OS The name of the operating system.
OS Arch The operating system architecture.
OS Version The Version of Operating System
Memory
Heap Initial(MB) The amount of heap that the Java virtual machine initially requests from the operating system in MB
Heap Maximum(MB) Maximum amount of heap that can be used for memory management in MB. This amount of memory is not guaranteed to be available if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size.
Non-Heap Initial(MB) The amount of non-heap memory that the Java virtual machine initially requests from the operating system in MB.
Non-Heap Maximium(MB) Maximum amount of non-heap memory that can be used for memory management in MB. This amount of memory is not guaranteed to be available if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size.
Up Time The total available time of the instance.
Processor Count The total number of processors available.
Total Threads The total number of threads taken by the Instance.
Total classes The total no. of classes used by the Instance.

Exceptions

Applications Manager's APM Insight eases your monitoring needs by providing detailed insights into various exceptions that are occurring within the application. The Exceptions tab helps you identify different types of exceptions and errors that are hindering the performance of your applications with detailed graphical and tabular representations.

Below are the metrics shown in the Exceptions tab:

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Top Exceptions
Transaction Name The name of the exception that has occurred in the application.
Count The number of times that exception has occurred in the application.
Top Error Codes
Transaction Name The name of the error code that has occurred in the application.
Count The number of times that error code has occurred in the application.
Recent 5 Exception Traces
Transaction Name The name of the exception trace that has occurred in the application.
Exception Count The number of times that exception trace has occurred in the application.
Recent 5 Error Transactions
Transaction Name The name of the error transaction that has occurred in the application.
Error Code The name of the error code that has occurred in the application.

In addition to the above metrics, you can also view all the various exceptions occurring within the application and represent them as graphs based on:

Graph Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Transaction Split up by Exception
Transaction Split up by Error Code
Exception Count
Error Count

 

Note:
To view reports on the metrics for the APM Insight monitor, click on Reports from the main tab and then select Trend Analysis Report from the list at the left. The following report types are displayed:

  • At a glance Report
  • Downtime History
  • Summary Report of Monitor

Service Map

Following are the metrics monitored under 'Service Map' tab.

Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Component Monitored applications dependent resources
Host Monitored applications dependent resource host
Average Response Time The average amount of the time taken by the Individual component or host
Failed Request The number of failed request count by the Individual component or host to the application
Total Request Count The number of request count by the Individual component or host to the application
Throughput The number of requests served per minute for the chosen time frame.

Following are the list of graphs shown under this tab:

Graph Name Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Average Response Time
Total Response Time
Throughput
Request Count
Count
Rate

App Parameters

Following are the metrics monitored under 'App Parameters' tab.

Category Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Sum Parameter Name The parameter name provided by the user in the application
Min The minimum aggregated value for the corresponding parameter on a particular interval.
Max The maximum aggregated value for the corresponding parameter on a particular interval
95th Percentile The 95th percentile of aggregated values for the corresponding parameter on a particular interval
Total The aggregated value for the corresponding parameter on a particular interval
Average Parameter Name The parameter name provided by the user in the application
Min The minimum average value for the corresponding parameter on a particular interval.
Max The maximum average value for the corresponding parameter on a particular interval
95th Percentile The 95th percentile of average values for the corresponding parameter on a particular interval
Average The averaged value for the corresponding parameter on a particular interval

Thread Profiling

Following are the metrics monitored under 'Thread Profiling' tab.

Category Attribute Description Agent / Supported Application
Java .NET .NET Core Node.js PHP Ruby
Thread profiles Collection Time The time in which the demanded thread profiling collection for certain duration
Thread Count The number of simultaneous requests handled by the application in a demanded duration
Min. CPU Time The minimum amount of time taken by CPU to execute application threads in a demanded duration
Max CPU Time The maximum amount of time taken by CPU to execute application threads in a demanded duration
Avg. CPU Time The average amount of time taken by CPU to execute application threads in a demanded duration
Min. Memory (MB) The minimum amount of memory allocated for application threads in a demanded duration
Max. Memory (MB) The maximum amount of memory allocated for application threads in a demanded duration
Avg. Memory (MB) The average amount of memory allocated for application threads in a demanded duration
Thread Dump Thread Id Identifier of a thread which should be high CPU consuming thread
Method High CPU consuming method for selected thread
CPU Time The amount of time taken by the CPU to execute the selected thread
Memory Allocated (MB) The amount of memory allocated for selected threads
Count The method execution count for selected thread

Data Clean Up & Data Collection Limits

Data clean up options and Data collection limits can be set by navigating to Settings -> Performance Polling -> APM Insight.

Following are the clean up parameters for which retention period can be set:

Parameter Description Maximum Limit
Raw Data Retention Period The number of days for which raw performance data for APM Insight monitors will be retained before clean up. 60 days
Traces Retention Period The number of days for which traces data for APM Insight monitors will be retained before clean up. 60 days

Note: Cleanup schedule Details: Data cleanup happens during every restart of Applications Manager, and subsequently every Sunday at 00:00 hours.

Following are the parameters for which data collection limits can be set:

Parameter Description Allowed Range (Per Application)
Web Transactions The maximum number of unique web transactions that can be stored for an application. 350-2000
Background Transactions The maximum number of unique background transactions that can be stored for an application. 300-2000
Exceptions The maximum number of exceptions that can be stored for an application. 150-500
Database Operations The maximum number of database operations that can be stored for an application. 500-1000
Components The maximum number of components that can be stored for an application. 200-400
App Parameters The maximum number of app parameters that can be stored for an application. 50-200

Reference Screenshot:

 

Note: Please note that increasing the above periods/limits will result in a proportionate increase in database size.