PHP Release Notes

 

Restart your web server if you have recently upgraded your agent. This will fix most reporting issues and will load the agent's new features and bug fixes.

PHP agent release notes

Monday, April 13, 2015 - 16:54
End of Life

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.

Bug Fixes

  • Support for mixed Laravel 4 and 5 environments has been improved.

    Web servers serving both Laravel 4 and Laravel 5 applications from the same process pool could see autoloader errors in the Laravel 4 applications after the first load of a Laravel 5 page. This has been fixed, and mixed environments should now work as expected.

  • Laravel detection has been improved.

    Starting with Laravel 5.0.15, applications with an optimized classloader use a new location for the optimized "compiled.php" file. Previously, the agent would fail to detect Laravel in this circumstance. The agent now looks in this new location as well as the old location for Laravel auto-detection.

Thursday, April 2, 2015 - 13:51
End of Life

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.

Bug Fixes

  • MySQLi segfaults fixed.

    Version 4.20.0 could cause the PHP agent to segfault when certain types of parameters were bound to mysqli_stmt objects. This has been fixed.

Wednesday, April 1, 2015 - 07:05
End of Life

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.

Release Unavailable

Due to a bug in this release related to the new explain plan support for MySQLi, we have decided to remove it from our download servers. Instead, we recommend installing version 4.20.1, which includes a fix for this bug.

New Features

  • Support for Laravel 5.0.

    We are pleased to announce support for the latest Laravel release: Laravel 5. Sites and applications using Laravel 5.0 are now automatically detected and named in the same way as Laravel 4 applications.

  • Support for explain plans with MySQLi.

    The existing support for generating explain plans for slow SELECT queries with the PDO MySQL driver has been extended to MySQLi. Explain plans are controlled by the newrelic.transaction_tracer.explain_enabled and newrelic.transaction_tracer.explain_threshold settings. These plans can be seen in the query analysis section of the slow SQL trace page in APM.

    Explain plans will be generated for queries issued through mysqli_query, mysqli_real_query, and mysqli_stmt_execute, as well as their OO equivalents mysqli::query, mysqli::real_query, and mysqli_stmt::execute.

    Please note that the mysqli_multi_query API is not currently supported, and that explain plans are not generated for multiple (semicolon separated) queries.

  • Added Memcache connection monitoring.

    The connect and pconnect functions (and their OO counterparts) of the Memcache extension are now instrumented, and will generate metrics. As a result, if there is a problem with calling those functions, it will now be visible within New Relic.

Bug Fixes

  • Laravel 4 App::after() filters are no longer overridden.

    In certain circumstances, the improved Laravel transaction naming code in version 4.19 of the PHP agent could result in filters registered using Laravel 4's App::after() method no longer being executed. This has been fixed.

Upgrade Notices

  • The daemon now uses openssl 1.0.1m, rather than 1.0.1l.

  • The daemon now uses curl 7.41.0 rather than 7.40.0.

Wednesday, March 4, 2015 - 15:25
End of Life

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.

New Features

  • Unified view for SQL database and NoSQL data stores
    The agent will now provide a breakdown of SQL operations according to the database product being used. This is in addition to the existing breakdown of SQL statements and operations. For NoSQL data stores, the agent will now provide a similar breakdown of the operations performed.

  • Memcached and Redis time reported separately
    Previously, the agent grouped Memcached and Redis operations into a single Memcached category. This is no longer the case. Time spent performing Memcached or Redis operations are separate.

Bug Fixes

  • Laravel transaction naming improvements
    Prior to this version, Laravel applications that had replaced the default router service could find that, in some circumstances, their transactions would be named as "unknown" rather than being correctly named from the route. This has been improved: replacement router services will now get appropriate transaction naming provided that they either implement filtering or ensure that the same events are fired as the default Laravel router.
Tuesday, February 17, 2015 - 13:40
End of Life

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.

New Features

  • Support for New Relic Synthetics.

    The PHP agent now gives you additional information for requests from New Relic Synthetics when the newrelic.synthetics.enabled setting is enabled. The agent records more transaction traces and events for Synthetics-originated requests to give you a clearer look into how your application is performing around the world.

    For more details, see https://docs.newrelic.com/docs/synthetics/new-relic-synthetics/getting-s...

  • Add a new newrelic_record_custom_event API function.

    This API function allows you to add custom events to New Relic's Insights product. For more information, please see: https://docs.newrelic.com/docs/insights/new-relic-insights/adding-queryi...

  • The daemon now uses openssl 1.0.1k, rather than 1.0.1j.

Bug Fixes

  • The agent properly recognizes prepared statements constructed with mysqli_stmt::__construct().

  • The newrelic-install script has been fixed to once again work for users with custom extension_dir settings.

Notes

  • The ability to set the appname to a string like: %{FOO} and have FOO expand into the environment variable was removed.
Friday, January 2, 2015 - 13:40
End of Life

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.

Bug Fixes

  • Fix a memory leak affecting newrelic_add_custom_parameter API function.
Friday, December 19, 2014 - 10:25
End of Life

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.

Bug Fixes

  • The agent now uses the route pattern as the transaction name for unnamed, closure-based routes under Laravel. For example, the following route will now be named hello/{name} instead of GET/index.php.

Route::get('hello/{name}', function($name) { return "Hello ${name}!"; });

  • Previously the agent could fail to detect the Laravel framework when artisan optimize was used. This has been fixed.

  • When the agent cannot determine a transaction name for the Laravel framework, the name "unknown" will be used instead of "laravel-routing-error". The latter implied the cause of the failure may have originated within Laravel itself rather than solely within the agent's instrumentation.

Tuesday, October 28, 2014 - 14:35
End of Life

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.

New Features

Bug Fixes

  • Fix an issue that could cause some background task metrics to be attributed to web transactions and some web transaction metrics to be attributed to background tasks. This could affect Drupal customers whose applications use drupal_cron_run.

  • This release changes the handling of HTTP Referer headers to always strip query parameters before reporting to New Relic. Previously, any query parameters present in a Referer header would be reported to New Relic by the PHP agent.

  • Fix an issue where urls using the file: protocol scheme with curl_exec() would cause the agent to record external metrics. This has been corrected and the agent will no longer treat file urls as external services.

Wednesday, September 24, 2014 - 11:22
End of Life

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.

New Features

  • Support for agent-side configuration of application labels using the newrelic.labels INI setting has been added.

    New Relic enables you to label and organize your apps so they "roll up" into an unlimited number of meaningful categories. You can also easily sort, filter, and page through all the applications on your account's Applications list.

    See the New Relic APM documentation and the PHP agent (newrelic.ini) settings documentation for more details.

Bug Fixes

  • Fixed issue that could prevent capturing database table name for prepared statements on PHP 5.6.
Thursday, September 11, 2014 - 10:30
End of Life

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.

Bug Fixes

  • Fix an edge case segfault that could occur in situations where the daemon failed to initialize.

Pages