Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- There is an outstanding issue with the Zend View component where it kills the output buffer that auto-RUM relies on, so for this environment you will need to disable auto-RUM by setting newrelic.browser_monitoring.auto_instrument = 0 and doing manual instrumentation for the time being.
- Fixed a potential spin-loop that would cause the agent to consume 100% of the CPU if the underlying OS did not allow the daemon connection (even if the daemon was up and running).
- Only apply Real User Monitoring scripts to HTML content.
- Fix an issue if auto-RUM encountered content it couldn't parse, it would cause a segmentation violation and cause Apache to core-dump.
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
The
apt
repository is now digitally signed, and in order to update the agent from this repository for Ubuntu or other Debian-like systems you will need to import the new GPG key using the following command (please note the trailing minus sign!):wget -O - https://download.newrelic.com/548C16BF.gpg | apt-key add -
A very special and big thank you to Nick Calugar of IGN Entertainment for suggesting improvements to the way in which Zend and Magento transactions are named. For these two frameworks the transaction naming is now more accurate and adds less overhead than the previous mechanism used to name transactions. This also fixed an issue where Magento transaction names sometimes had garbage characters in them or sometimes even PHP script fragments. In both cases the transaction is named 'module/controller/action' as it is for other frameworks.
Another very special thank you to Roderick Smyth of Arithon in Dublin for absolutely invaluable help during the beta testing period and for testing the OCI8 support.
Significant improvements to automatic Real User Monitoring (auto-RUM). The most important change is that auto-RUM is now implemented as an output filter so it now works for all frameworks, not just Drupal and Wordpress. It is also considerably more reliable as a result, as modules and other changes to the framework no longer impact how we insert the RUM header and footer. If you previous had to manually insert RUM headers and footers, you are strongly encouraged to re-enable auto-RUM and comment out your existing manual calls. To go with this change there is a new API call, 'newrelic_disable_autorum()' that you can call to prevent auto-RUM from running for a given transaction. For example you may want to disable auto-RUM for AJAX calls.
Regardless of how it is invoked, the RUM footer will now never be ejected if the header was not also ejected in the same transaction. This prevents JavaScript errors if the header somehow fails to get inserted.
The RUM header and footer have been very slightly modified to add a missing semicolon after the last script command. This also prevents some browsers and compliance analyzers from complaining about the JavaScript.
Support for the MemCache-like features of Redis has been added. This is by no means full support for Redis, just those portions of the Redis API that map cleanly onto the existing MemCache metrics. They will show up in the overview graphs as MemCache activity, so if you use both MemCache and Redis the data will be merged, just as the overview for different SQL databases is merged.
Considerably improved support for multi-framework sites (where more than one framework is in use for multiple parts of the same site). Instrumentation for framework-specific functions is now isolated on a per-request basis, so multiple requests handled by one PHP instance will no longer be confused by by the sudden change in framework.
The logrotate script no longer conflicts with the version installed by the New Relic Server Monitor.
Implemented a timeout for agent-to-daemon communication so that if the daemon becomes unresponsive for whatever reason, the agent will no longer hang (and thus appear to crash Apache) waiting for the daemon to recover.
Correctly ignore user notice errors in the error handler.
Added support for the deprecated but still frequently used
mysql_db_query
function.Added support for the Zend framework's Zend_Http_Client::request() method to track external service calls better in Zend.
Added the ability to use the syntax
newrelic.appname="%{VARIABLE}"
when setting the application name. This will use the SAPI's environment variable lookup mechanism to find VARIABLE and set the application name accordingly.The
REPLACE
SQL command verb will now be recognized and unique metrics generated for it rather than being lumped into "other".A thread mutex deadlock issue on OpenSolaris has been resolved.
Support for the pure PHP MemCached client from Wikia has been added.
file_get_contents()
now shows up in the external services tab if the object being retrieved is remote and uses HTTP or HTTPS.The
newrelic_notice_error()
now has a third invocation form, which takes a string and anException
object. If the string is provided it is used as the error message. If it is empty then a default string in a format similar toException::__toString()
is automatically generated and used as the error message. The exception object provided will be used to create the stack trace for the exception so that you can see the stack trace at the time of the exception, rather than the stack trace at the time of displaying the exception.If you enable the capturing of request parameters by setting
newrelic.capture_params = true
, you can now also setnewrelic.ignored_params
to a comma-separated list of sensitive parameters to be excluded from any data sent to New Relic.Support for CakePHP 2.0 has been added, and the CakePHP 1.2 and 1.3 support has been overhauled a little based on feedback from the author, Mark Story. CakePHP 1.2 applications will now be considerably faster when New Relic is enabled due to the new transaction naming mechanism. It will also ensure that transactions are correctly named even if you have implemented your own custom dispatcher class.
MongoDB now correctly instruments the
update
command.Added support for Oracle databases by instrumenting the two most critical calls:
oci_parse()
andoci_execute().
No other OCI calls are currently instrumented.A bug that had the potential to cause a segmentation violation has been fixed.
Several performance improvements that further reduce the overhead of the agent.
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- New feature: slow SQL. This is very similar to transaction traces but instead records the 10 slowest SQL statements, along with a stack trace of where the SQL was executed from in your program.
- Fixed a bug in the automatic insertion of RUM headers and footers where they could sometimes be inserted multiple times (especially the footer).
- The "Drupal Modules" feature can now be enabled and disabled on a per-directory basis like most other configuration settings.
- A few minor bug fixes that had the potential for causing random agent crashes, although these were very infrequent.
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- Very minor change to change the KB URL paths in error messages and to correct the LICENSE.txt file to include the full copyright and permissions notices for various open source components used withing the agent.
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- Very minor change to the daemon to remove a pause on startup if the daemon happened to start within 30 seconds of the top of the minute.
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- Fixed several coredump issues related to Drupal Modules.
- Updated SQL parser to ignore C-style comments in SQL.
- Added OpenSolaris x64 support.
- Now possible to instrument internal PHP functions but only after consultation with technical support, as it adds additional overhead.
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- Version number change. Starting with this release version numbers only use 2 segments, as in 2.3. The remaining bits simply reflect the build level.
- Naming web transactions for several new frameworks has been added: Joomla (1.5 and 1.6), Kohana (3.1 and 3.2), Magento 1.6 and MediaWiki 1.16.
- Drupal auto-RUM has been modified to inject the header earlier so that all CSS and JavaScript loading is taken into account, and it now also works when the advagg module is installed.
- Drupal modules support. This needs to be enabled by setting
newrelic.framework.drupal.modules=1.
This will display how much time is being spent in each Drupal module, including sub-modules. When enabled this feature is accessed from the "Modules" tab of the App Server menu. - Support for MongoDB has been added.
- New API call
newrelic_ignore_apdex()
has been added. This allows users to ignore certain time-consuming activities (such as downloading a file) from their overall apdex score. - PHP namespace separator () no longer causes a malformed JSON error when it appears in a transaction trace.
- SQL parser improved to better detect table names and avoid database metric explosion on certain SQL statements.
- Calls to
Drupal's drupal_http_request()
are now correctly identified as external service calls. - Several speed improvements to further reduce the impact when Drupal Modules support or top100 is enabled.
- MacOSX agent no longer aborts when PCRE isn't loaded.
- RUM scripts improved to load the footer script after the page has fully loaded so that it does not impact user-visible performance.
- API functions
newrelic_get_browser_timing_header()
andnewrelic_get_browser_timing_footer()
now take an optional bool argument (that defaults to true) that indicates whether or not script start and end tags should be inserted around the returned JavaScript. - Small memory leak when adding metric names fixed.
- Daemon startup scripts now correctly ignores comment lines
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- Fixed up not detecting background jobs when run from cpanel
- Corrected url path problems resulting in 500 errors for web transactions when on CakePHP
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- Fixed a SIGSEGV that happened when Zend Guard encoded files were encountered
- Corrected the way we were determining the domain names of external services that was causing a Transaction Traces display problem (500 error)
Importante
The end-of-life date for this agent version is July 29, 2019. To update to the latest agent version, see Update the agent. For more information, see End-of-life policy.
Notes:
- Fixes up a problem in our SQL parser that was causing Magento app segfaults when accessing admin pages