This topic covers release information for the AppDynamics App iQ Platform versions 4.5.x. In addition to the enhancements and resolved issues described here, the latest 4.5.x release includes enhancements and resolved issues included in certain limited-availability releases, as well as security fixes.
The first generally available 4.5.x release is 4.5.0.<build-number>.
The release notes are inclusive. All updates since 4.5.0 are noted in the 4.5 Release Notes. The Product Announcements and Alerts page lists versions, along with release dates, across product versions.
This documentation reflects AppDynamics Application Intelligence Platform version 4.5.x. Changes between minor versions are noted in the release notes and indicated in-place in the documentation where applicable.
System Requirements and Supported Environments
See the relevant page for the component you want to install or upgrade.
AppDynamics App iQ Platform Notes
The following updates apply to the common components of the AppDynamics App iQ Platform, including changes to the cross-product elements of the Controller UI.
Application Performance Management
App iQ .NET Core for Linux SDK
The .NET Core for Linux SDK lets you monitor the performance of .NET Core applications running on Linux with App iQ.
The SDK supports the following:
- Business Transaction registration and error reporting
- Exit call with correlation and error reporting
- Snapshots with user properties but without callgraphs
- Audit logging coverage has been made more comprehensive. It now includes the following:
- Changes to configuration settings, for example, health rules, policies, actions, and so on.
- Application deletion
- Audit log, report, and API details have been enhanced to include more information about what was updated.
- Audit Reports:
- You can use include/exclude filters in scheduled audit reports and rest API.
- There is also support for JSON and CSV formats for audit reports.
- You can enable or disable persistence of audit log state-change data using audit.log.changes.persisted flag in the admin.jsp file.
Data Collection Dashboard
You can view the current state of all configuration parameters that may affect your security and privacy from a single dashboard view. These settings include retention settings, custom data collectors, IP-address retention in EUM, and so on. See Data Collection Dashboard for more information.
Custom Dashboard Viewer permissions
- A custom dashboard viewer can view all data on the controller-level custom dashboards regardless of application-level or other restrictions applied on the dashboard data.
This customizable statement is present in all areas of the AppDynamics UI where data collection can be configured.
- Authentication and authorization security enhancements have been made to the AppDynamics App iQ Platform in the form of scalable, securable, and admin configurable support:
- You can create and use API Clients to provide secure access to the Controller through REST API calls. These calls now use OAuth token-based authentication over basic authentication. See API Clients for more information.
- The SAML authentication can handle encrypted SAML responses from identity providers. You can enable SAML Encryption on Authentication Provider of Administration on your Controller.
- When creating usernames in SAML in Azure environments, the UserName attribute is used if it is passed along. The NameID attribute is not handled if it is passed backinAzure. If you relied on the legacy behavior of concatenating the first name and surname, then you can work around this enhancement by changing your Azure provider to return the concatenated names in the UserName attribute.
The UI for configuring health rules and policies has been redesigned to create a cleaner look and make it more intuitive. For more information, see, Configure Policies, Configure Health Rules, Health Rules, and Mobile Health Rules.
- License rules are now supported for Service Availability Monitoring (SAM). You can view the SAM license graph on the Rules tab under License.
- You can create license rules using the REST API.
|ALERT-716||Actions are now triggered even when “Execute Action on 100% of the Nodes” is configured|
|ALERT-902||Reporting of repetitive controller log files with identical content is now fixed|
|ALERT-945||Though the ‘action suppression’ configured with ‘Disable Agent Reporting’ is deleted, the associated agents do not report metrics until the configured action suppression time has elapsed|
|ALERT-2067||Cannot create health rules using synthetic job availability metrics or retrieve metrics for synthetic jobs older than a day if ‘EUM LITE’ license is used|
|ALERT-2081||REST API fails with a ‘500 error code’ if ‘CUSTOM_ACTION_STARTED’ event type is present in the returned events list and if the time duration set is greater than 120 mins|
|ALERT-2159||Status of the customized widget for a health rule remains unchanged in the dashboard although the health rule is disabled|
|Application names under Roles are not in alphabetical order|
|PLATUI-313||Application search under Roles is case sensitive|
|PLATUI-346||Application search under Roles displays blank screen after scrolling|
|PLATUI-736||Unable to save the custom role when the dashboard search box is selected|
|REPORTS-105||Dashboard Health List names in Hebrew are not displayed on Reports on Linux Controllers|
Reports are not generated properly – includesemptyiframe
|DASH-2721||Event List changes are not reflected properly on the UI.|
|DASH-2668||Wildcard is not working for custom metrics type, Server|Component:<tier_id Or tier_name>.|
|DASH-2665||Health List widget fails for Server entities.|
|DASH-2660||War room template cannot be created withforwardorback slashesin the template name.|
|DASH-1276||Inconsistent fetch depth is observed for Metric Tree Selector while handling custom visitors.|
|DASH-1245||Editing Metric Value Widget alters the existing metric title.|
|DASH-1231||Clicking Health rule in the health status widget displays a blank page.|
|DASH-1198||Support custom metrics type, Server:Component:<tier-name> in custom dashboards.|
|DASH-1166||After upgrading the Controller from 4.0 to 22.214.171.124 dashboards are distorted.|
|PLATCPS-1624||Issue with username creation in SAML|
|PLATCPS-3096||Snapshot information is doubled after archive operation|
|PLATCPS-3968||AWS 5.5MM /controller/restui/snapshot/getRequestSegmentData takes 44 seconds|
|PLATCPS-5591||Off-by-one error on license availability check for APM Any Language License|
To use the Universal Agent to deploy the Analytics Agent on Linux, you must use machine-agent mode. Standalone mode is not supported for this use case.
- Using the auto-Java feature for deployment of the Java Agent with the Universal Agent is not supported on Windows 2008 SP2 32-bit and 64-bit.
- To install the .NET Agent with the Universal Agent use a local repository for the .NET Agent distribution file. Downloading the .NET Agent from the Controller is not supported.
- For JMX functionality to work, set a Currently monitored statistic set to an option other than None in IBM WebSphere.
Application Performance Monitoring Notes
Language Agent Backward Compatibility
Starting in release 4.5, AppDynamics language agents are backward-compatible with any 4.4.1 or higher Controller. Thus you can upgrade your language agents – and take advantage of the latest agent-side enhancements, features, and bug fixes – without upgrading your 4.4 Controller. The following table outlines the Controller and language agent releases that are compatible.
|Controller Release||Language Agent Release||Notes|
|4.4.1+||4.1+||4.4.1 and newer Controllers can accept connections from newer agents.|
|4.3.x||4.1.x – 4.3.x||4.3.x Controllers cannot accept connections from newer agents.|
|4.2.x||4.1.x – 4.2.x||Agents older than 4.3 are no longer supported, and agents older than 4.1 are no longer guaranteed to connect to a Controller.|
Backward compatibility is supported on the following agents starting in Release 4.5:
- Go SDK
You can now drill down into federation applications. This allows you to display incoming calls from the upstream federated application.
A new Create Events permission has been created.
Snapshot Waterfall Viewer
- The Waterfall View within the snapshot viewer has been comprehensively enhanced. It now shows time spent in uninstrumented backend systems as well as inactive threads within instrumented nodes, and also shows the relationships between the segments. For asynchronous Business Transactions, it also labels the threads where the Business Transaction begins and ends.
Java Agent Enhancements
- Added a node property jmx-query-timeout-limit to override ignoring JMX rules/attributes.
- The Java Agent supports transaction detection, naming, and data collector instrumentation for the IBM BPM product.
- The Java Agent supports for Correlation for Kafka.
- The Java Agent adds support for Eclipse Vert.x version 3.5.
- The Java Agent adds platform support for Oracle JDK version 10, OpenJDK version 10, JRockit version 1.6, IBM JVM version 1.8, and Azul Zulu version 10.
- The Java Agent adds support for Java Servlet API version 3.0.
- The Java agent adds support for Log4j 2.
- The Java Agent handles the Exit Point Identification of the Distributed Command Bus for Axon 3.x.
- The Java Agent now reports Business Transaction and Backend timings reflecting the black-box HTTP response times for supported asynchronous entries and exits.
- The Java Agent now reports errors that occur on asynchronous threads.
The Java Agent now correlates an increased number of out of the box backends with the Network Visibility product.
The Java Agent added out of the box instrumentation for the JAX-RS client reactive API.
The Java Agent added out of the box instrumentation for version 4 of the spring framework.
.NET Agent Enhancements
- .NET Core for Linux SDK
- You can now include or exclude applications using the AppDynamicsConfig.json file
- Added new app agent node property queue-single-threaded. This property specifies the threading architecture for the IBM MQ message queue. The value defaults to "false."
- AppDynamics integration with Pivotal Cloud Foundry (PCF) allows you to deploy AppDynamics-monitored .NET applications on the Pivotal platform. See .NET Application in PCF - Monitoring Workflow.
|DOTNET-1351||Machine snapshots do not show CPU percentage and process when ProcessNameFormat is set to 2|
|DOTNET-1319||Agent is not able to identify the ADO.NET exit for the System.Data.Common.DbDataAdapter class methods|
|DOTNET-2420||QueueTask intermittent instrumentation issue when ReJIT is enabled|
|DOTNET-2425||Missing HTTP Exit calls result in inconsistent correlation with downstream tiers|
|DOTNET-2443||Auto node naming is not working in Service Fabric cluster for .NET Core|
|DLNATIVE-1501||PHP crashes when cleaning up cURL headers|
|DLNATIVE-1520||PHP crashes when trying to access PDO handle that does not exist in the registry|
|DLNATIVE-1521||PHP crashes when trying to destruct a CurlHandleInfo on curl_close|
|DLNATIVE-1524||PHP agent crashes application with data collector and object chaining on PHP 7.1.16|
|DLNATIVE-1552||Data collector shows object rather than data value in the snapshots with PHP 7.1.16|
|DLNATIVE-1579||PHP crashes when making a cURL request|
|DLNATIVE-1638||PHP crashes when trying to access PDO handle that does not exist in the registry|
|JAVA-3086||Error creating custom JMX rules which are inside a composite data structure(array)|
|JAVA-3088||Limit error references held when agent not connected to Controller|
|JAVA-3161||StackOverflowError in CallGraphBuilder.fixChildrenWaitBlockTime(CallElement e)|
|JAVA-3190||NPE thrown when trying to get Destination type (JMS) and disabling interceptor|
|JAVA-3214||AppAgent 4.4.x version does not start with JDK 1.9 as JRE runtime version|
|JAVA-3485||WebSpherePMI Domain MBeans are not supporting instance identifier customization|
|JAVA-3598||NPE Error with VERTX API version 3.3.0 and java agent 4.4.1|
|JAVA-3809||Correlation not working for ning HTTP client|
|JAVA-3819||Memory leak when adding EUM HTTP header in NettyHttpResponse|
|JAVA-3846||Enable EUM Correlation for Mule ESB in 4.4.x agent|
|APMPLAT-756||User without CREATE_APPLICATION permission is not able to archive events, and delete events has missing permission check|
|APMPLAT-1665||Config Export REST call throws an exception and returns 500 Internal Server Error|
|APMPLAT-2267||Error message shown when upstream BT's of masked transaction are excluded|
|APMPLAT-2274||Multiple tiers in the metric browser|
|APMPLAT-2685||Agent reports snapshots for deleted BTs|
|APMPLAT-2751||DB & Remote Service Calls: missing comma in column Total Time|
|APMPLAT-2754||NPE at BTFlowMapServiceImpl.computeBTFlowMapTopologyAndFetchMetricDataInternal() due to MetricQueryManagerBean.getMetricNode() returns null|
|APMPLAT-3350||Internal Server Errors when viewing snapshots|
|APMPLAT-3610||UI display historical nodes|
|APMPLAT-3616||Improve logic of node purger|
|APMPLAT-3654||UI shows duplicate queries in the Potential issues section|
|APMPLAT-3813||Improve getProcessSnapshotDataByGuid performance|
|APMPLAT-5832||Tier & Node list not fully populating|
|APMPLAT-5887||Snapshot Waterfall has the wrong sort order|
|APMPLAT-6242||Tier and Node showing null for JVM restart time|
|APMPLAT-6329||Tiers and Nodes page: missing tier count top right corner|
|APMPLAT-6341||IIS App Pools page gets stuck under Tiers & Nodes|
|APMPLAT-6800||Copy REST URL in metric browser broken|
|APMPLAT-6926||Error response after copying/pasting REST URL from Metric Browser|
- If you enable Kafka consumer entry points for the Java Agent, the flow map shows the data flow in reverse from the node to the Kafka cluster.
- Business transaction retention settings are not affected by the business.transaction.retention.period value in the Admin Console.
- For JMX functionality to work, set a Currently monitored statistic set to an option other than None in IBM WebSphere.
Database Visibility Notes
- Couchbase monitoring is now supported.
- Custom query metric improvements: you can specify a custom query that you want Database Visibility to issue at regular intervals. The results are collected in a custom metric.
- Parameter change tracking enhancement: you can view the changes to database configuration parameters over time.
- Export collectors enhancement: you can export database collector data into a CSV file.
- Snapshot correlation enhancement: you can view the queries that were issued by each business transaction.
- Generic Cluster Support: better support for groups of databases, or database clusters, including Master/Slave, and other replication technologies as well as sharded architectures. AppDynamics Database Visibility now allows you to group configurations under a single Collector, providing enhanced configuration and visualization within the UI.
|DBMON-2943||Posgres Collector is unable to navigate to databases section from Object Browser|
|DBMON-2953||DB Agent 4.4.2 fails to start with SQL Server collector when Windows authentication is enabled|
|DBMON-2977||MSSQL Collector stops reporting data after 9 minutes|
|DBMON-3068||Getting permission exception while exporting grid data on query detail page.|
End User Monitoring Updates
Browser RUM and Mobile RUM Browser no longer collect IP addresses by default. You have to configure the Controller to collect IP addresses. See Configure Request IP Address Storage - Mobile and Configure Request IP Address Storage - Browser to learn how to enable the collection of IP addresses.
- The EUM Server now uses the Neustar's IP GeoPoint database for managing the geolocation of IP addresses. For on-prem deployments, see Update the EUM Server's Geo Server to learn how to update the Neustar IP GeoPoint database.
The new Code Issues Dashboard enables you to get trend and detailed information about caught non-fatal exceptions and instances of applications not responding (ANRs). The Android/iOS SDKs enable you to set the severity of caught non-fatal exceptions so that you can filter code issues by severity in Code Issues Analyze. See Code Issues for more information.
The IoT REST API and IoT SDKs enable you to correlate business transactions between IoT applications and business apps. See Correlate Business Transactions for IoT Monitoring for more information.
The Controller is not receiving metrics because of a time skew between the Controller and the EUM Service
Child Ajax events are not reported because of missing parent page events
When an EUM app's new metric limits are reached, no new metrics are created, and data for existing metrics are not recorded
The start time is incorrect for synthetic sessions where the HAR doesn't have a base page
Some internal errors are being reported as timeouts
|EUMUI-1703||Mobile sessions are not loading for some users|
|EUMUI-1574||Regular expressions including ampersands aren't working|
|EUMUI-1033||The map locations of US cities are incorrect when filtering by 'United States'|
|EUMUI-616||When a user has been explicitly granted delete permission, deleting a job shows an error box, although the deletion works|
|EUMUI-608||The screenshot timestamp for synthetic sessions should not be an available field|
Infrastructure Visibility Notes
Important Note about Changes in Dynamic Monitoring from Previous Releases
Starting in release 4.5, Dynamic Monitoring Mode (DMM) is enabled by default on all Standalone Machine Agents. Because the default mode for all agents is KPI, only KPI metrics are collected by default in this release. This is true for the following metrics:
This change can affect any user-defined features created in previous releases that rely on Diagnostic or Advanced Diagnostic metrics. Examples include Health Rules, Dashboards, and scripts with metric API calls.
AppDynamics strongly recommends that you disable these user-defined features, edit them to use KPI metrics instead, or increase the Dynamic Monitoring Mode on the relevant agents.
For more information, see
- Configure Health Rules
- Create and Manage Custom Dashboards
- Build a Monitoring Extension using Scripts
- Dynamic Monitoring Mode and Server Visibility
- Dynamic Monitoring Mode and Docker Visibility
Standalone Machine Agent Enhancements
- The Standalone Machine Agent is now supported on Windows Server 2016.
- The Standalone Machine Agent is no longer supported on Windows Server 2008 or Debian 7.
Server Visibility Enhancements
- This release supports monitoring of applications deployed in OpenShift v3. See Monitoring Red Hat OpenShift Clusters.
- Dynamic Monitoring Mode enhancements:
- Dynamic Monitoring Mode (DMM) is now supported for all Docker Visibility metrics. See Dynamic Monitoring Mode and Docker Visibility.
- The Controller now has three different DMM defaults for all agents reporting to that Controller. Each setting applies to a different set of metrics.
Default for Hardware Resources Metrics on servers without Docker Visibility
Default for Hardware Resources Metrics on servers with Docker Visibility enabled
Default for Docker Container Metrics on containers running apps monitored by App Agents
- The default for all three settings is KPI, the lowest setting: collect Key Performance Indicator metrics only.
- AppDynamics recommends that you leave these global settings at their defaults and increase the DMM on individual servers or containers on an "as-needed" basis:
- When you need to troubleshoot a specific server or container, increase the DMM on that object only.
- When you finish troubleshooting that object, set the DMM on that object back to KPI.
- When a container monitored by a Java App Agent shuts down and restarts, any overridden DMM specified for the shut-down container is lost. The DMM for the restarted container automatically resets to the global default specified by
- Docker Visibility enhancements:
- The Container Details window includes a new Network tab. This tab is available only if the Dynamic Monitoring Mode for the container is Diagnostic or Advanced Diagnostic. This tab shows:
- Network KB – Total traffic (KB)
- Network Rate – Rate of traffic (KB/s)
- Network Errors
- Packet Drops – Rate of incoming/outgoing packets dropped by the network. A high rate of packet drops might indicate congestion or other network issues.
- Errors – Rate of incoming/outgoing packets with errors.
- The following new metrics are available in the Metric Browser:
CPU %Busy Scaled – If the -cpus=<value> option is set in the container, this metric measures the scaled value of the CPUs property. If this value is not set, this metric measures the scaled value of the Logical CPUs property.
You must enable CPU Scaling on the Controller to collect this metric.
- Network metrics
- Incoming KB
- Outgoing KB
- Incoming KB/sec
- Outgoing KB/sec
- Incoming packets
- Outgoing packets
- Incoming packets dropped
- Outgoing packets dropped
- Disks – these metrics might not be available on all platforms:
- Average IO Utilization (%) – Average disk utilization for read/write operations.
- Queue size – Average number of container requests queued during the time bucket. Consistently high queue sizes indicate that the container is not getting enough IO resources.
- The Container Details window includes a new Network tab. This tab is available only if the Dynamic Monitoring Mode for the container is Diagnostic or Advanced Diagnostic. This tab shows:
Network Visibility Enhancements
- Transaction Snapshots now support network analysis and troubleshooting workflows.
In the Snapshot Overview, you can right-click on a flow and choose View Network Metrics. The resulting dashboard shows the Performance Impacting Events (top-left chart) for that flow and possible correlating factors for these events.
- The Network Dashboard can now show Cross Application Flows.
- The Network Agent now supports monitoring multiple applications running in Docker containers on the same host. You can deploy one Network Agent per host and collect individual metrics for every local application monitored by a Java App Agent in a container. See Docker and Network Visibility.
- The Network Agent uses packet captures to calculate Network Visibility metrics. You can use the following new Health Rule to troubleshoot packet-capture issues that might affect metrics generated by an agent:
Network-Host: Packet drops too high
This rule triggers an alert when packets get dropped between a Network Agent and the host interface. A high rate of packet drops on the host can result in inaccurate metrics.
- The Connection Explorer, Mapping Wizard, and Connections tab (in network link popups) can now display the Fully-Qualified Domain Names for remote services and Load Balancers. This makes it easier to identify the external services used by your monitored applications.
- Usability enhancements:
- Right-click dashboard charts now support both linear and logarithmic scales.
- You can open the Unmapped Connection Wizard directly from a Tier Dashboard if that tier has any unmapped connections.
The Network Dashboard uses a new visual convention to represent TCP Endpoints.
TCP Endpoint in 4.4 TCP Endpoint in 4.5
|SERVER-2059||Controller UI stops working intermittently due to threadpool saturation|
Machine Agent cannot collect OS info on Red Hat Extended Linux 7.4
Service Availability Event should display events related to that service only
Node Dashboard > Server tab should show the same information as Server Dashboard
Enabling sim.machines.reuse.enabled sometimes results in thread pool saturation and prevents Standalone Machine Agent from communicating with Controller
Server page shows data for 13 hours, not selected time range of 1 day (observed on SaaS Controller)
In some cases, Machine Agent stops collecting process metrics even after machine/global max thresholds are increased
Machine agent is not reporting processes, networks, and volumes when running in Container
Disk usage percentage on Linux needs to reflect "df -P -m" command
Machine Agent not reporting metrics on docker when process command contains space
Hierarchy name check is case-sensitive, which prevents Standalone Machine Agent registration
Number of CPUs reported by Standalone Machine Agent is sometimes inaccurate on Windows
|SERVER-4412||Service Availability configurations on agent host get deleted when the machine is considered stale and marked for deletion|
Cannot update RPM Standalone Machine Agent due to a packaging error
License > Account Usage does not show Service Availability license usage
Standalone Machine Agent Known Issues
- Reset Machine Agent action on the AppDynamics Agents window is not available for 4.4 and higher Machine Agents.
- (Windows only) The JavaHardwareMonitor extension and the ServerMonitoring extension (introduced in 4.2) assign network names differently. If you have any health rules based on JavaHardwareMonitor names, and you want to use these rules with the ServerMonitoring extension, you will need to update the names that these rules are based on.
Server Visibility Known Issues
- Dynamic Monitoring Mode (DMM) is enabled by default on the Controller starting in release 4.5. When DMM is enabled, the Servers tab does not show data for machines that are currently inactive but are not yet deleted. (An inactive machine will re-appear in the Controller if it becomes active again and resumes reporting data to the Controller.)
To see data for stale machines, disable DMM on the Controller; view data for the machines of interest, and then re-enable DMM.
- If a metric name contains colons (
:), the Metric Browser interprets the name as hierarchically separated.
- If the machine that a Machine Agent is monitoring goes to sleep, monitored processes might be duplicated on the Controller. Because the process has a new start time, the Controller interprets it as a new process. When the configured process count is reached, the Controller marks the duplicated processes as terminated and purges them.
- (Windows only) You must have .NET Compatibility Mode enabled for Server Visibility to work correctly on a server with a .NET APM agent installed.
- Server Visibility does not support the following on Solaris:
- Solaris zones
- Unicode characters
- The following Health Rule is disabled by default in this release:
Disk Usage is too high on at least one partition.
This wildcard health rule can result in high resource consumption and health rule evaluation times on the Controller. If this rule is critical for your environment, the recommended practice is to create your own custom Health Rules and apply specific rules for specific volumes on specific servers. For more information, see the following Support Advisory: https://community.appdynamics.com/t5/FEZ-Knowledge-Base/Server-Visibility-Support-Advisory/ta-p/22408
Docker Visibility Known Issues
- The Standalone Machine Agent running inside the container sometimes reports a few extra volumes for the host machine. This can result in a higher total volume for the aggregate volume metrics.
- There might be gaps in the container network I/O metrics. This happens because the Docker API resets the accumulated network I/O metric data for every 4.2 GB of data sent or received. When the data is reset, the Standalone Machine Agent calculates negative I/O values and does not report a data point for that time window.
- If the agent started monitoring the current container after the beginning of the selected time range in the Controller, the Controller might show metric data prior to the container start time. This metric data will include metrics from a previously monitored container. This behavior occurs when the Controller flag "sim.machines.reuse.enabled" is enabled.
- If the agent started monitoring the current container before the beginning of the selected time range in the Controller, the data is correct for the current container.
- If a container stops running while it is being monitored, the Tiers & Nodes Dashboard > Server tab will show data for the stopped container rather than for the underlying server.
- In some cases, container monitoring is suspended when some containers that are currently being monitored are stopped. This issue has been observed on Docker API version 1.24. The suggested workarounds, in this case, are to
- Restart the Standalone Machine Agent (Docker Visibility will start monitoring the containers), or
- Upgrade to Docker CC/EE v17.03 or Docker Engine v1.13.
- cgroup data collection is not supported in Kubernetes deployments. If the Standalone Machine Agent is monitoring containers deployed as Kubernetes pods, do not enable the cgroup Enabled setting.
- The Container Details > Network tab does not display IP or MAC addresses for monitored containers.
Network Visibility Known Issues
- If you open the Network Flow Map for an individual node, the KPI metrics for node-to-load-balancer and node-to-TCP-endpoint links show network KPIs for all nodes in the parent tier (instead of KPIs for the individual node only). To view KPIs for the individual node, open the link popup and look at the Connection KPIs.
Network Visibility cannot monitor Cross Application Flows that use Jersey web servlets. As a workaround, you can disable Jersey servlet instrumentation. The impact is that Business Transactions on these flows get recognized as servlets instead of Web Services. To implement this workaround:
- Select the application of interest in the Controller UI.
- Choose Configuration > Instrumentation > Transaction Detection.
- Disable instrumentation for Jersey Servlet and Jersey 2.x Servlet
AppDynamics Business iQ Notes
Enhancements and Updates
- ADQL user experience improvements:
- ADQL UI now has the Save button to save new searches.
- The following fields are added to the ADQL UI for
mobile_snapshots: Platform, Request Content Length, Response Content Length, Country, Region, Background.
- The Analytics Search page now shows advanced statistics, such as standard deviation, median, minimum, and maximum, for numeric fields. Click a field to view associated statistics.
- ADQL now has the HAVING and SINCE ...UNTIL clauses.
- ADQL now supports the totalResultCount() function. The function returns the total number of events. totalResultCount() does not accept a field.
- The analytics functions, such as avg, max, and min, now support the datetime type data.
- Business iQ now supports exporting large datasets and fields enclosed within quotes to a file in CSV format for external use.
- The IS NOT NULL operator is now supported in Basic mode (Drag and Drop Search), including Funnel filters. The operator returns all the events with values either true or false.
- The numeric widget now has a comparison indicator. Use the Compare to and Trailing By options in the Widget Properties to indicate an offset. The Compare to option by default is set to None. Select Prev.period from the Compare to drop-down and specify the relative time in minutes, hours, or days using the Trailing By option. The current aggregate value is compared against the period you specify and the difference is displayed in the widget.
- All the widgets now support user input for percentile aggregations. The supported values are integers between 1 and 99 inclusive. In Basic mode, drag a numeric field to the canvas, and use the drop-down next to the field name to specify a value for percentile aggregation.
- The logarithmic scale is now supported in Analytics widgets for the Time Series charts. Use the Logarithmic Y Axis checkbox in the Widget Properties to apply the logarithmic scale to a selected field.
- You can now edit the properties of multiple widgets.
- Ability to hide legends is now supported in widgets. In the Widget Properties, select None from the Legend drop-down to hide legends.
- Analytics Widget Properties now have an option to make the widget's background transparent.
- Funnel widget now has the ability to rearrange the steps.
- Agent ID and Client GUID are exposed in the Data tab and can be used to build custom widgets.
- The Close Widget Builder option is provided to support canceling widget editing. With this option, unwanted changes to a widget can be dropped while editing, and revert to the previous version by closing the widget.
- The extra whitespace on the histogram has been removed. The histogram now looks condensed on the dashboard.
- The metrics created using the Numeric widget now displays the exact value returned by the search. In Widget Properties, select Exact from the Format drop-down to view the exact number. Other options available are Automatic, Thousands(k), and Millions(m). The default is Millions(m).
- Business Journeys authoring is enhanced with the following features:
- Business Outcomes is renamed as Business Journeys.
- The Business Journey page now has the Search button to provide one-click access to the underlying events. Selecting an enabled Business Journey and clicking Analytics Search takes you directly to the Searches page in Basic mode. Analytics Search button is unavailable for definitions in Draft and Valid Draft states.
- Float type is supported for filtering Business Journey events.
- Custom event data can be used to create Business Journeys.
- All the fields that are part of filters and optional filters are automatically collected.
- When defining Business Journeys, you can now delete the same field from one milestone and add it to a different milestone in the same save action.
- At the Business Journey level, a field named
completedhas been added to track the status of the workflow using the boolean values. True represents a completed Business Journey, whereas False indicates that the journey is in progress or is incomplete. Use the Search widget or an ADQL query for the desired Business Journey with the query string,
completed,to view the status of the associated events.
Business Journeys page in Analytics now shows flow maps detailing the business workflow associated with Business Journeys. The flow map automatically appears as you create milestones for a Business Journey. Additionally, selecting a Business Journey opens it in a new window with the flow map enabled.
Analytics generates out-of-the-box metrics at the Business Journey definition and milestone levels. View these metrics in the Metric Browser.
Analytics provides Business Journeys Dashboard with two Views for Business Journeys: Card View and Grid View.
- The Metrics page now has the Enable and Disable button on the toolbar.
- The Metrics page now has the Event Type column.
- Double-clicking a business metric opens it in the Metric Browser.
- Business Metrics list is now searchable.
- Metric on ratios is supported.
Experience Level Management (XLM)
- Visibility into XLM data is improved in the following ways:
- You can now create XLM reports in the time zone of your choice.
- You can now export reports. Reports are exported inCSVformat,andcontain however many reporting periods you choose.
You can now migrate XLM configurations from one environment to another. One common use case is when you first deploy a configuration in a staging or test environment and then need to migrate it to production.
This is done by making two API calls.
Export XLM configuration(s) from one environment.
Optionally, supply a configuration ID, or a comma-delimited list of configuration IDs, as a query parameter.
If this parameter is omitted, the API returns a bulk export of all XLM configurations.
Import a single XLM configuration into another environment.
- The Audit Trail now includes complete XLM Configuration information. Four fields are new in the Audit Trail:
- From XLM Configuration > Properties:
- Event Type (shown as Data Source in Audit Trail)
- From XLM Configuration > Compliance Target Settings:
- Compliance Target (shown as Field in Audit Trail)
- Start Date
- Compliance Period
You can now export the Audit Trail to a CSV file.
You can now specify files to exclude from ingestion, by defining a glob pattern of file paths to the blacklist.
Here is a common two-step use case:
- Define a glob pattern to include all the files that you want to ingest
- Define an additional glob pattern to exclude (blacklist) files that satisfy the first glob pattern, but that you do not want to ingest
Upgrading the Analytics Agent
If you are running the Analytics Agent as a standalone binary, see this topic: Upgrade Analytics Agent.
If you are running the Analytics Agent through the Standalone Machine Agent, See Upgrade the Standalone Machine Agent for instructions.
If you have been collecting log analytics data:
- Preserve the old watermark file so that you can copy it to the corresponding location in the new <analytics-agent-home> directory structure.
- Preserve your pre-existing job files so that you can copy them to the corresponding location in the new <analytics-agent-home> directory structure.
Field Names for Data Collectors
In versions prior to 4.3, Analytics used the actual HTTP parameter name to display the fields collected by Data Collectors. Beginning in 4.3, Analytics is using the configured display name for such fields.
When you upgrade to agents versions 4.3 or above, new HTTP parameter data will appear under the display name. If you had previously configured the display name to be different from the actual parameter name, your historical data and new data collected by the 4.3 or 4.4 agents for a single HTTP parameter will be split between the two field names.
Enabling Transaction Analytics
Beginning with 4.3 agents, you should enable Transaction Analytics exclusively using the Analytics Configuration UI. The Analytics Configuration UI allows for enabling Analytics at the Application level. You should no longer use the deprecated
analytics-dynamic-service-enabled node property.
analytics-dynamic-service-enablednode property through the Agent Configuration UI (updating the
analytics-dynamic-service-enablednode property directly) it will have no effect on version 4.3 or higher Java Agents.
Version 4.2 and earlier app server agents use the
analytics-dynamic-service-enabled node property to enable Transaction Analytics. Using the node property directly allowed for disabling and enabling the Analytics Dynamic Service at the application, tier, and node levels. The Analytics Configuration UI allows for setting this property only at the Application level. Therefore, Java Agents 4.3 and higher are not able to disable or enable the Analytics Dynamic Service at the tier and node levels.
Although the Analytics Dynamic Service configurations can be directly changed through the application import and the Analytics Dynamic Service import REST API, manipulating the Analytics Dynamic Service configurations through either of those mechanisms only updates the Analytics Dynamic Service configurations and not the corresponding
analytics-dynamic-service-enabled property. Therefore, if you use one of these import mechanisms to enable or disable the Analytics Dynamic Service and you have a mixture of old (pre 4.3) and new (4.3 and higher) agents, you must manually set the associated
analytics-dynamic-service-enabled property to match the Analytics Dynamic Service configuration value. The analytics-dynamic-service-enabled node property can also be set as part of the Application Import and has its own Import REST API (accessed at POST /setAgentProperty). See "Import Application Analytics Dynamic Service Configuration" at Configuration Import and Export API.
|ANALYTICS-3841||ADQL query is incorrectly updated when sort order is modified in existing visualization widgets|
|ANALYTICS-4119||Some unique identifiers of Funnel widget are not exposed in the Event table in the Analytics Data tab|
|ANALYTICS-4534||UI sometimes incorrectly shows "unhealthy" as status for Analytics Agent|
|Users assigned Analytics Administrator through a group cannot see searches saved by other users|
|ANALYTICS-4806||Analytics Agent stops ingesting logs when log file rolls over|
|The Analytics Administrator permission assigned through groups does not take effect|
|ANALYTICS-7554||Duration settings for XLM synthetic sessions are in seconds but should be in milliseconds|
|Fields are not getting extracted for milestones|
|Unable to define additional filters containing special characters|
- Metrics created from aggregations on
eventTimestampdo not work as expected.
- To deploy the Analytics Agent on Linux using the Universal Agent, you must use machine-agent mode.
- (Windows only) You can not delete a log file with the "del" command while the Analytics Agent is collecting log data from the file.
- For Analytics Searches:
- In Basic mode, regular expressions and the NOT logical operator are not supported for free text search.
- In Basic mode, quotes and commas have no special meaning.
- Saved Searches from 4.1 can be imported multiple times if you click 'Import from 4.1' button multiple times.
- Due to timing issues, full information on business transactions might not appear immediately after running a Transaction Analytics search.
- If you have deployed EUM such that you are using an on-premises Events Service for transaction and log analytics data, and the SaaS Events Service for your EUM data, you can not query the browser or mobile request data using the Analytics API.
- Events Service does not start properly if installed in a non-default directory in developer mode. This issue is observed in on-premises Windows platforms.
AppDynamics On-Premises Platform Notes
The following notes describe updates to the AppDynamics on-premises platform, including the Controller, Events Service, and EUM Server components.
Controller / Events Service
- The JRE of the Controller and Events Service has been upgraded to version 8u162.
There is support for major-version upgrades for the Enterprise Console application. This means you can install, upgrade, and manage multiple versions of Controllers and Event Services.
You can choose which version you would like to install/upgrade the Controller/Events Service to as long as the Enterprise Console is aware of that version. This means that you can upgrade the components to any intermediate version or to the latest version as long as the Enterprise Console installer has been run for those versions.
The Enterprise Console installer now uses version 6 of i4j. This resolves issues with warnings seen when installing in console mode.
When adding the Enterprise Console host machine, you should stop using the alias, 'platformadmin', and instead start using the following:
- On the CLI, you should use 'localhost', the loopback address '127.0.0.1', or the machine's actual hostname.
- From the UI, you should use the Add Enterprise Console Host button, which will automatically populate the text field with the hostname of the Enterprise Console machine.
- You can edit credentials from Custom Installation.
- You can manage your Controller SSL certificate on the Enterprise Console UI under Configurations.
- The Enterprise Console CLI commands now consistently use hyphens (-) instead of underscores (_). For example, the job discover_upgrade is now discover-upgrade.
- The Enterprise Console supports up to 20 platforms at a time by default.
Ubuntu version 16 and higher requires the tzdata package in order to install the 4.5 Enterprise Console and Controller.
|ECONSOLE-1529||Windows Controller installation fails when special characters are used in controller admin password|
|ECONSOLE-1923||Enterprise Console UI does not show where to upgrade an existing Controller|
|ECONSOLE-1924||Enterprise Console upgrade procedure shows Install instead of Upgrade at the bottom|
|ECONSOLE-1951||Service name is not displayed in the error message when the Windows service registration fails|
|ECONSOLE-1978||Enterprise Console startup script should unset CDPATH|
|ECONSOLE-1992||Enterprise Console does not back up configuration files when any configuration is updated|
|ECONSOLE-2068||Internal app agent does not report to internal monitoring Controller automatically after Controller installation on Windows|
|ECONSOLE-2087||Enterprise Console should check available disk space before taking controller backup|
|ECONSOLE-2563||Verify SSH connection fails due to incorrect SSH setup|
|ECONSOLE-2608||Upgrading MySQL task does not update the database version correctly if the job fails halfway|
|ECONSOLE-2656||Enterprise Console fails on SuSE|
Enable edit of platform path within Enterprise Console UI
|ECONSOLE-2712||orcha-modules.log contains no dates|
|ECONSOLE-2796||Misleading Enterprise Console error message in platform-admin-server.log - attempted to reach unknown host|
|ECONSOLE-2806||db/lib backup does not cope well with Linux symbolic links|
|ECONSOLE-2851||Add current Linux effective user name to rsync/ssh UI error messages|
|ECONSOLE-2936||Intermittent HA primary Glassfish availability leads to two active controllers running|
|ECONSOLE-2938||Glassfish server.log file size reduced by 60%|
|ECONSOLE-3220||Secondary MySQL does not start due to space ID collisions|
|ECONSOLE-3238||Failover Job does not trigger|
Controller stop operation fails when service is in STOP_PENDING
|METADATA-1843||User login exception when using old password format|
|METADATA-2198||Description of audit.log.file.size property in admin.jsp does not mention units|
|METADATA-3606||Controller startup failure due to login audit failure in 4.4.1|
|METADATA-4242||Upgrade fails if dropping mds database fails in execute setup.xml ant tasks|
Controller audit reports do not work immediately after upgrading the controller to 4.5. Audit table migration messages are logged in the server.log file when audit reports are run before completing the audit database table migration process. Try running the audit reports again at least an hour after the upgrade.