Data security

This summarizes New Relic's security measures for data.

Data collection

New Relic collects the following aggregate metric data:

  • Database activity
  • External web service calls
  • Controller and dispatch activity
  • View activity
  • Uncaught exceptions and counts
  • Process memory and CPU usage

This aggregate metric data summarizes calls to specific methods in your application: how many times each one was called and various response time statistics (average, minimum, maximum, and standard deviation). In New Relic, you will see the class and method names along with their aggregate numbers.

For paid accounts, New Relic optionally collects:

Data collection
(paid accounts)
Comments
Uncaught errors New Relic captures the error as well as a runtime stack trace of the offending code.
Transaction traces

These are snapshots of a single transaction. At your option, New Relic also collects the query statements called within the transaction. The default collection uses obfuscation to hide any strings or numbers from the query.

For transactions slower than a threshold you set, New Relic also collects data from SQL EXPLAIN. For database calls slower than a configured threshold, New Relic optionally collects runtime stack traces, which are helpful to pinpoint where in the code a database call is made.

Custom parameters You can add custom parameters to your application code and record them with transaction traces to provide additional context while you are examining profiling information.

Optional: For both errors and transaction traces, the HTTP request parameters can also be recorded.

HTTP parameters disabled by default

By default, New Relic agents disable collection of HTTP request parameters, such as the query string of a URL. This is an automatic safeguard to protect potentially sensitive data. New Relic collects and displays HTTP parameters only when you explicitly enable them in your agent configuration file.

SSL enabled by default

As of 2013, New Relic agents enable SSL by default. To verify which release includes SSL by default and to ensure that you have the most up-to-date version, refer to your agent's release notes:

The configuration file also includes an optional flag (ssl) to enable or disable SSL using HTTPS. New Relic does not do host authentication with HTTPS, just communication encryption.

Data transmission

Under Java, .NET and PHP, New Relic uses JSON to serialize data. The Ruby agent uses either Ruby marshaling or JSON serialization to send data to New Relic, depending on whether a native JSON encoder is available in under the Ruby version the agent is running on.

The agent communicates with two hosts: collector.newrelic.com and a numbered host labeled collector-nnn.newrelic.com, where nnn is any numerical value. The numbered host is typically (but not always) fixed for your account, and it appears in the log/newrelic_agent.log at startup. If you are creating firewall rules to allow the agent to communicate, see Networks for the required changes.

Proxies

New Relic includes optional settings so that you can configure the agent to communicate via a proxy. To define proxy settings for host, port, domain, user, or password, refer to your agent's configuration file documentation:

Agent Proxy settings
Go transport
Java

Use proxy settings, including:

.NET proxy element
Node.js proxy
PHP newrelic.daemon.proxy or the daemon's proxy setting
Python proxy settings
Ruby

Use proxy settings, including:

Infrastructure proxy
Servers for Linux proxy
Servers for Windows proxy

Masking (obfuscation)

When New Relic agents refer to data obfuscation, this means the data is masked and cannot be recovered. For example, with queries, the Record SQL? value defaults to obfuscated. This strips the string literals and numeric sequences and then replaces them with the ? character.

New Relic captures HTTP request parameters in transaction traces. However, you can mask sensitive information in HTTP or HTTPS requests as an additional security option for transaction traces.

For more help

Additional documentation resources include:

  • Security (overview of New Relic's security measures)
  • Data retention (sample data, data aggregation, permanent data storage and aggregation)

If you need additional help, get support at support.newrelic.com.