Important
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 Features
- Extends the uri reported in the external call labels in transaction traces so that users can see both the host and the resource being called.
Improvements
- Rewrote the installer.
- You no longer need to uninstall before re-installing the agent. You can simply run the new installer and it will upgrade your old install.
- The installer no longer requires administrative rights at start to complete successfully. It will ask for elevation (on newer OSs) when needed and give reasonable error messages when it doesn't have enough permission (on older OSs).
- If you instrument non-IIS applications you should no longer manually set environment variables manually. Instead, during install choose the "Instrument All .NET Applications" feature. If you have already installed run the installer again and choose "Change".
- Configuration and log files are now stored in %ALLUSERSPROFILE%\New Relic.NET Agent\ instead of Program Files.
- The API is now optionally installed and should only be needed on development machines and build servers.
Fixes
- Restores request queuing metrics being reported by the agent - they will now appropriately appear in the overview graphs
Important
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 Features
- Adds Real User Monitoring (RUM) auto instrumentation for all .net MVC versions
Fixes
- Fixed an issue that would cause certain methods to not to be instrumented correctly including but not limited to Oracle.DataAccess.Client.OracleCommand.ExecuteReader.
Important
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
- Addresses an issue where the Real User Monitoring (RUM) footer was being injected outside of the body close tag in Web Forms applications, creating invalid markup. Also improves the performance of the auto instrumentation of RUM in Web Forms applications.
- The Apdex score (Satisfied, Tolerating, Frustrating) was being incorrectly reported for Key Transactions, and was also skewing the overall Apdex score.
Important
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
- Fixed an issue where if an application was not using real user monitoring (RUM) the field that is used for that data was not being properly cleared.
- Fixed an issue where an implementation of ExtensionAttribute was overriding the .net 4.0 framework's CompilerServices.ExtensionAttribute. The agent will now use the appropriate implementation of ExtensionAttribute based on the given framework.
Important
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 Features
- Key Transactions alerting support for .NET
- Real User Monitoring (RUM) browser traces are now linked to app server transaction traces.
- Users can optionally turn on an Audit Log which will be a separate log file containing just the bits sent between the agent and the New Relic server. It can be enabled by adding the auditLog attribute to the log node of newrelic.xml, and assigning it a value of true.
Fixes
- Fixed a bug revolving around a race condition that could cause an application to crash.
- Clarified some of the error output from the NewRelic .NET agent's diagnostic tool.
Important
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 Features
- Updated the logo used in the installer.
Fixes
- Allow medium-trust .NET applications to be monitored. We accomplished this by adding the AllowPartiallyTrustedCallers assembly attribute to all of our .NET assemblies. This also reduces assembly load overhead in some environments.
- Minor improvements to debug logging.
- Fix parsing of sql commands so that the metric name is based on a SELECT/INSERT/UPDATE/DELETE-style command instead of supporting commands such as SET (as in SET NOCOUNT).
- Improvement error handling in agent to avoid null reference exceptions.
- Added comments to the NewRelic.AgentApi programmer interface for intellisense support.
- Diagnostic tool now warns instead of reporting an error if COR_ENABLE_PROFILING is not set to 1.
Important
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
- The agent diagnostic utility, NewRelic.DiagnosticTool.exe, now supports a "verbose" mode as a command-line option (-v or -verbose). If you do not use the option, you will just get the failures and warnings. If you use the -v option, the output will include failures, warnings and passed test results. In previous versions of the agent, the diagnostic utility always output all results, making it more difficult to easily see where the failures were.
Fixes
- Removed all of the static docs from the installer. All documents for the .net Agent are now available at: https://newrelic.com/docs/dotnet/
- Changed the way the agent gets the urls for each web-based transaction from the built-in .NET RawUrl property to using the url off of the request. This will help keep urls reported by the agent consistent and prevent exceptions when raw representations of the url do not exist
- Significant improvements around the way the agent loads assemblies for instrumentation. This should help individual application load times as well as load times when instrumenting multiple applications on a single server
Important
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
- When enabling enterprise security (or High Security) in rpm applications either stop responding completely or the profiler will shut down due to security violation regardless of the ssl setting in newrelic.xml config.
High security requires that the newrelic.xml config have the attribute ssl in the service node set to "true," the enabled attribute in the requestParameters node set to "false" and the recordSQL attribute in the transactionTracer node to be set to "obfuscated." The .net Agent log now appropriately reflects the configuration needs and will gracefully stop the profiler if the configuration does not meet the requirements of High Security. - If there are invalid characters in the newrelic.xml file, when the .NET Agent's DiagnosticTool is run, it throws an exception associated with the "DiagnosticCollectorAttachment". This is the name of a private function in the tool, and the tool just logs the message associated with the exception. The fix now allows the evaluation for an inner exception, where the more meaningful message can usually be found and recorded.
- Fix for a Null Reference Exception happening on rare occasions when recording metrics.
Important
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
- After deployment of a site, the site would throw a TypeLoadException "Could not load 'NewRelic.Agent.Core.AgentShim' from assembly mscorlib", because of a stale assembly token cache used within the agent.
- Segments in transactions for .NET MVC applications were being mis-labeled with System.Web.Mvc.ProcessRequest(async). This has been renamed to System.Web.Mvc.ProcessBeginRequest()[async] to reflect the actual name of the framework method being instrumented. This is because System.Web.Mvc.MvcHandler now implements IHttpAsyncHandler.
Features changed
- The agent installer will no longer allow users who are not administrators to complete the installation. This prevents the agent from being improperly installed.
- Turned off the metrics for the execution pipeline steps. The agent still generates transaction trace segments for the calls, so the user will still be able to diagnose the pipeline without the execution pipeline steps.
Important
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
- Do a better job of exercising some diagnostic print statements.
- Strip off the generic qualifier (backtick and beyond) in Exception names when comparing names with a list of exception names to ignore.
- Make the diagnostic tool more robust, and release in an architecture-neutral format.
- The diagnostic tool now only writes to stdout.
- Change SQL obfuscator to correctly handle escaped quotes in strings, and to obfuscate more literal constants.
- Log (at finest level) obfuscated SQL and the generated metric name for SQL queries.
- Change the diagnostic tool to ternary logic, reporting PASS, WARN and FAIL; some errors reading registry now marked as WARN.
- Disable tracers for HttpWebRequest.SerializeHeaders and HttpWebResponse.Close, as the data collected by those is not yet used.
- Copy comments from newrelic.xml into newrelic.xsd to help xml aware editors.
- Log timestamps now contain millisecond accurate data.
- Stability enhancements in profiler core.
- Fix fusion log binding errors from the New Relic Agent.