December 4, 2012
.NET agent v184.108.40.2064
- Adds Real User Monitoring (RUM) auto instrumentation for all .net MVC versions
- Fixed an issue that would cause certain methods to not to be instrumented correctly including but not limited to Oracle.DataAccess.Client.OracleCommand.ExecuteReader.
November 28, 2012
.NET agent v220.127.116.112
- 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.
November 16, 2012
.NET agent v18.104.22.168
- 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.
October 11, 2012
.NET agent v22.214.171.124
- 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.
- 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.
September 20, 2012
.NET agent v126.96.36.199
- Updated the logo used in the installer.
- 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.
August 22, 2012
.NET agent v188.8.131.52
- 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.
- 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
July 19, 2012
.NET agent v184.108.40.206
- 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.
June 7, 2012
.NET agent v220.127.116.11
- 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.
- 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.
April 27, 2012
.NET agent v18.104.22.168
- 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.
February 20, 2012
.NET agent v2.0.7
- Extend the command-line tool NewRelic.DiagnosticTool.exe to try to write to logs, %TMP% and to the registry.
- Add DiagnosticToolDocumentation.html that describes the DiagnosticTool.
- Improve error messages and error recovery when web.config file or any of the xml configuration files are lexically, syntactically or semantically incorrect.
- Fix a bug in the way some text is rendered in the event viewer.