重要
La fecha de finalización de esta versión del agente es el 29 de julio de 2019. Para actualizar a la última versión del agente, consulte Actualizar el agente. Para obtener más información, consulte Política de fin de vida útil.
Notas:
El repositorio
apt
ahora está firmado digitalmente y para actualizar el agente desde este repositorio para Ubuntu u otros sistemas similares a Debian, necesitará importar la nueva clave GPG usando el siguiente comando (¡tenga en cuenta el signo menos final!):wget -O - https://download.newrelic.com/NEWRELIC_APT_2DAD550E.public | sudo gpg --import --batch --no-default-keyring --keyring /usr/share/keyrings/download.newrelic.com-newrelic.gpg
Un agradecimiento muy especial y grande a Nick Calugar de IGN Entertainment por sugerir mejoras en la forma en que se nombran las transacciones de Zend y Magento. Para estos dos marcos, la denominación de las transacciones ahora es más precisa y agrega menos sobrecarga que el mecanismo anterior empleado para nombrar transacciones. Esto también solucionó un problema en el que los nombres de transacciones de Magento a veces contenían caracteres basura o incluso fragmentos de script PHP. En ambos casos, la transacción se denomina 'módulo/controlador/acción', como ocurre en otro marco.
Otro agradecimiento muy especial a Roderick Smyth de Arithon en Dublín por su ayuda absolutamente invaluable durante el periodo de prueba beta y por probar el soporte de OCI8.
Mejoras significativas al monitoreo automático de usuarios reales (autoRUM). El cambio más importante es que auto-RUM ahora se implementa como un filtro de salida, por lo que ahora funciona para todos los frameworks, no solo para Drupal y Wordpress. Como resultado, también es considerablemente más confiable, ya que los módulos y otros cambios en el framework ya no afectan la forma en que insertamos el encabezado y pie de página RUM. Si anteriormente tuvo que insertar manualmente encabezados y pies de página de RUM, se recomienda encarecidamente volver a habilitar el RUM automático y comentar las llamadas manuales existentes. Para acompañar este cambio, hay una nueva llamada API, 'newrelic_disable_autorum()', que puedes llamar para evitar que se ejecute RUM automático para una transacción determinada. Por ejemplo, es posible que desees desactivar el RUM automático para las llamadas AJAX.
Independientemente de cómo se invoque, el pie de página de RUM ahora nunca se expulsará si el encabezado también se expulsó en la misma transacción. Esto evita errores de JavaScript si el encabezado no se puede insertar.
El encabezado y pie de página de RUM se modificaron ligeramente para agregar un punto y coma faltante luego del último comando de script. Esto también evita que algunos navegadores y analizadores de cumplimiento se quejen del JavaScript.
Se agregó soporte para la característica similar a MemCache de Redis. Esto no supone de ninguna manera un soporte completo para Redis, sólo para aquellas partes de la Redis API que se asignan de forma limpia a la métrica MemCache existente. Se mostrarán en los gráficos de descripción general como actividad de MemCache, por lo que si usa tanto MemCache como Redis, los datos se fusionarán, al igual que se fusiona la descripción general de diferentes bases de datos SQL.
Soporte considerablemente mejorado para sitios con múltiplesframework (donde se emplea más de un framework para múltiples partes del mismo sitio). La instrumentación para funciones específicas frameworkahora está aislada por cada solicitud, por lo que múltiples requests manejadas por una instancia de PHP ya no se confundirán por el cambio repentino en framework.
El script logrotate ya no entra en conflicto con la versión instalada por el Monitor de servidor de New Relic.
Se implementó un tiempo de espera para la comunicación entre agente ydaemon de modo que si el daemon deja de responder por cualquier motivo, el agente ya no se colgará (y por lo tanto parecerá que bloquea Apache) esperando que el daemon se recupere.
Ignorar correctamente los errores de notificación al usuario en el controlador de errores.
Se agregó soporte para la función
mysql_db_query
obsoleta pero aún empleada con frecuencia.Se agregó soporte para el método Zend_Http_Client::request() del framework Zend para rastrear mejor las llamadas de servicios externos en Zend.
Se agregó la capacidad de emplear la sintaxis
newrelic.appname="%{VARIABLE}"
al configurar el nombre de la aplicación. Esto empleará el mecanismo de búsqueda de variables de entorno de SAPI para encontrar VARIABLE y establecer el nombre de la aplicación en consecuencia.Ahora se reconocerá el verbo del comando SQL
REPLACE
y se generará una métrica única para él en lugar de agrupar en "otros".Se resolvió un problema de bloqueo de mutex de subprocesos en OpenSolaris.
Se agregó soporte para el cliente MemCached PHP puro de Wikia.
file_get_contents()
ahora aparece en la pestaña de servicios externos si el objeto que se recupera es remoto y usa HTTP o HTTPS.El
newrelic_notice_error()
ahora tiene una tercera forma de invocación, que toma una cadena y un objetoException
. Si se proporciona la cadena, se emplea como mensaje de error. Si está vacío, se genera automáticamente una cadena predeterminada en un formato similar aException::__toString()
y se emplea como mensaje de error. El objeto de excepción proporcionado se empleará para crear el seguimiento de stack para la excepción, de modo que pueda ver el seguimiento de stack en el momento de la excepción, en lugar del seguimiento de la stack en el momento de mostrar la excepción.Si habilita la captura de parámetros de solicitud configurando
newrelic.capture_params = true
, ahora también puede configurarnewrelic.ignored_params
en una lista separada por comas de parámetros confidenciales que se excluirán de cualquier dato enviado a New Relic.Se agregó soporte para CakePHP 2.0, y se revisó un poco el soporte para CakePHP 1.2 y 1.3 según los comentarios del autor, Mark Story. La aplicación CakePHP 1.2 ahora será considerablemente más rápida cuando New Relic esté habilitado debido al nuevo mecanismo de nombres de transacciones. También garantizará que las transacciones tengan el nombre correcto incluso si implementó su propia clase de despachador personalizada.
MongoDB ahora instrumentó correctamente el comando
update
.Se agregó soporte para Oracle base de datos instrumentando las dos llamadas más críticas:
oci_parse()
yoci_execute().
Actualmente no se instrumentan otras llamadas OCI.Se corrigió un error que tenía el potencial de causar una infracción de segmentación.
Varias mejoras de rendimiento que reducen aún más la sobrecarga del agente.
重要
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.
重要
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.
重要
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.
重要
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.
重要
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
重要
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
重要
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)
重要
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