15.02.18 - Apigee Edge cloud release notes

On Tuesday, February 17, 2015, we released a new cloud version of Apigee Edge.

New features and enhancements

Following are the new features and enhancements in this release.

Analytics enhancements

This release includes many enhancements in usability and performance of Edge analytics dashboards and reports.

  • Performance charts for APIs, Developers, Products, and Developer apps have moved. They used to be shown at the bottom of the main pages for these entities. Now, you access the charts by selecting the Analytics tab at the top of each page.
  • This release includes major work on these existing or new dashboards:
    • Apigee Dashboard (Revised): Includes three metric charts: Proxy Traffic, Developer Engagement, and Developer Apps. Each chart provides a "more details" view that lets you drill into each metric. See Apigee dashboard.
    • Proxy Performance (New): Shows API proxy traffic patterns and processing times. Replaces the API Proxy Performance dashboard. See API Proxy Performance.
    • Traffic Composition (Revised): Completely revised dashboard look and feel and contents. Measures the relative contribution of your top APIs, apps, developers, and products to your overall API program. See Traffic composition.
    • Error Analysis (Revised): Completely revised look and feel and contents. Shows error rates for API proxies and targets. See Error Code Analysis Dashboard.
  • These existing dashboards have been renamed:
    • Endpoint Performance was renamed to Target Performance: Shows traffic patterns and performance metrics for API proxy backend targets. See Target performance.
    • Partner Engagement was renamed to Developer Engagement: Shows you which of your registered app developers are generating the most API traffic. For each of your developers, you can find out who is generating the most API traffic and the most errors. See Developer engagement.

Filtering options in management UI

On the API Proxies, Products, Developers, and Apps pages in the management UI, new filtering options are available for search.

Offline Trace tool

The Offline Trace tool lets you view and analyze trace sessions that were previously saved. A saved trace session is essentially a "recording" of a trace session, and can be useful for cases where troubleshooting and further analysis is required. The UI for the Offline Trace tool is similar to the "live" Trace tool.

For more information, see Using the Offline Trace tool.

User roles displayed in User Settings

On the User Settings page of the management UI (username > User Settings), the user's roles are now displayed.

Edge management UI enhancements

This release includes a number of small usability and consistency improvements in the Edge management UI.

Bugs fixed

The following bugs are fixed in this release.

Issue ID Description
APIRT-272 io.timeout.millis setting is not being honored
The io.timeout.millis setting on an API proxy's HTTP Target Connection is now honored for dynamic target endpoints.
APIRT-441 OAuth error messages returned back to the client has changed
In an OAuthV2 policy, when continueOnError is set to true, Edge now populates the following new flow variables to provide more information about errors: oauthV2.policy-name.fault.name and oauthV2.policy-name.fault.cause
APIRT-641 Location of up-to-date XSDs
Schemas for the Edge policies have been updated in the Apigee samples GitHub repository. See: https://github.com/apigee/api-platform-samples/tree/master/schemas/policy.
APIRT-848 High RES memory usage of message processors
APIRT-970 High heap usage in message processors
APIRT-998 AccessControl Policy with more than one X-Forwarded-For IP not blocking traffic
In the Access Control policy, only the first X-Forwarded-For header was being used. Now the policy uses all X-Forwarded-For headers if more than one is present.
APIRT-1078 Message processors and routers sometimes enter a stale state during deployment
APIRT-1098 MP logs showing java.util.ConcurrentModificationException while executing Javascript
Service not available errors were being thrown in some JavaScript policies during debug/trace. This issue has been fixed.
APIRT-1099 Issue with GetOAuthV2Info - AuthorizationCode. Throwing NPE.
The GetOAuthV2Info policy was throwing null pointer exceptions while trying to fetch "AuthorizationCode". This issue has been fixed. The policy now supports the retrieval of AuthorizationCode information.
AXAPP-572 Dropdown on Dashboard page does not change state after selection
AXAPP-1295 Custom reports resulting in internal server error
The management UI now ensures that special characters (%, ") are encoded properly for analytics calls from custom reports.
AXAPP-1320 Drilldown to empty custom dimension causes error with accuracy level "Accurate"
AXAPP-1390 "Server Error" warning while trying to load top performance view on "Dashboard" page
AXAPP-1427 Responsiveness issue on dashboard when viewing "by minute"
CORERT-280 TCPMonitor should schedule tasks at fixed delay and not fixed interval to avoid consuming all threads
TCPMonitor code has been optimized to handle system resources more efficiently.
CORERT-297 java.lang.OutOfMemoryError: Direct buffer memory observed on Netty router during load test
CORERT-331 URL with '|' is causing malformed request
Pipe characters in URLs ("|") were causing bad request errors. This issue has been fixed.
CORERT-338 Find best base path match when there are conflicting entries with proxyBasePath, env, vhost alias, and vhost port
CORERT-348 Backend's 200 is changed to 503 due to the "Connection: close" response header
DEVRT-1039 Transaction Rate Plan is not mandatory
The Transaction Recording Policy requirement was not being enforced. Monetization now continues to require that a Transaction Recording Policy exist for a product before a rate plan can be defined for a package that contains the product.
DEVRT-1210 Terms and Conditions date field does not use org timezone for validation
The Terms and Conditions Effective Date was being calculated incorrectly. The date is now validated against the organization’s time zone.
MGMT-927 Develop UI not parsing XML in policies correctly, can cause issues when saving new revisions
The management UI wasn't parsing the API proxies and policies when the XML definitions wrapped into multiple lines. This issue has been fixed.
MGMT-1294 New trace UI does not show incoming request if the target back-end takes a while to respond
MGMT-1302 Redirect loop on login to management UI
In certain cases, logging into the management UI on Firefox would not work. This has been fixed.
MGMT-1309 Trace UI filter explicitly urlencodes special characters
MGMT-1323 API model can be retrieved without credentials
The API model resources now require authentication on all requests except the proxyUrl discovery endpoint. This means that viewing SmartDocs HTML directly off the backend now requires credentials.
MGMT-1386 AJAX error on APIProxy overview page
Data integrity errors were occurring when multiple organizations were active in different browser tabs. The Edge management UI now helps ensure data integrity in multi-browser-tab situations. After you work with one organization on a browser tab, the management forces you to switch to that organization in all other management UI tabs.
MGMT-1410 Target Server not verified when used in Service Callout
In a Service Callout policy, a missing target endpoint was being allowed during API proxy bundle deployment. The policy's target endpoint is now being validated, and a missing target endpoint in a Service Callout throws an error on deployment.
MGMT-1411 No <Path> variable in TargetEndPoint's LoadBalancer throws NPE during deployment
In an HTTPTargetConnection, when a LoadBalancer was used and a Path wasn't specified, a 500 error was thrown. This issue has been fixed. If a LoadBalancer is missing the Path element, the default "/" is used.
MGMT-1416 Message improvements when deploying a proxy bundle with an incorrect Condition
Error messages while developing API proxies have been improved to include more information about the location of and reasons for the errors.
MGMT-1496 Incorrect UI error message while adding user
When trying to re-add an existing user to an organization, the message "User undefined already exists in the organization" appeared. The word 'undefined' is now replaced with the username.
MGMT-1532 Custom role without EDIT permission does not allow creation of an API proxy
MGMT-1538 Developers with $ in local-part of email cannot be retrieved
MGMT-1543 Cannot deploy in 'User' role via the management UI

Known issues

This release has the following known issues.

Issue ID Description
APIRT-950 Reports may display "na" for developer app and product
"na" sometimes appears in analytics reports. The following documentation topic describes what "na" means in different contexts: mean? A future update will improve the display of this label in the UI.