Our Redis integration reports critical performance data from your Redis server to New Relic products. You can view this metric data and inventory data in pre-built dashboards, create alert policies, and create custom queries and charts. You can also specify keys that are important to your application and get information about their length.
Read on to install the integration, and to see what data we collect.
Our integration is compatible with Redis versions 3.0 or higher.
Before installing the integration, make sure that you meet the following requirements:
- If Redis is not running on Kubernetes or Amazon ECS, you must install the infrastructure agent on a Linux OS host that's running Redis. Otherwise:
The integration obtains data by executing Redis commands:
INFOcommand: Data from the INFO command populates metric data and some inventory data.
CONFIG GETcommand: Most inventory data comes from this command.
- In managed Redis installations without permissions to execute the
CONFIGcommand (for example, AWS ElastiCache), the execution of this command can be disabled with the
config_inventory: falseconfiguration option.
- In managed Redis installations without permissions to execute the
- Key length acquisition: Depending on the type of key, these commands are used:
For key length data collection, the agent uses pipelining to minimize the impact on your Redis performance. However, if you are collecting the length of many keys, your Redis performance may be affected. For this reason, the agent includes a default key limit (but this limit can be overwritten).
If you edited the names of the Redis commands mentioned above, the integration will not be able to retrieve the Redis data.
Instrument your Redis server quickly and send your telemetry data with guided install. Our guided install creates a customized CLI command for your environment that downloads and installs the New Relic CLI and the infrastructure agent.
Ready to get started? Click one of these buttons to try it out.
To install the Redis integration, follow the instructions for your environment:
- Advanced: Integrations are also available in tarball format to allow installation outside of a package manager.
- On-host integrations do not automatically update. For best results, regularly update the integration package and the infrastructure agent.
An integration's YAML-format configuration is where you can place required login credentials and configure how data is collected. Which options you change depend on your setup and preference.
There are several ways to configure the integration, depending on how it was installed:
- If enabled via Kubernetes: see Monitor services running on Kubernetes.
- If enabled via Amazon ECS: see Monitor services running on ECS.
- If installed on-host: edit the config in the integration's YAML config file. (The install process includes setting some of these.)
Config commands include:
remote_monitoring parameter enables remote monitoring and multi-tenancy for this integration.
remote_monitoring may change some attributes and/or affect your configured alerts. For more information, see remote monitoring in on-host integrations.
Infrastructure agent version 1.2.25 or higher is required to use
Environment variables can be used to control config settings, and are then passed through to the infrastructure agent. For instructions on how to use this feature, see Configure the infrastructure agent.
With secrets management, you can configure on-host integrations with New Relic infrastructure's agent to use sensitive data (such as passwords) without having to write them as plain text into the integration's configuration file. For more information, see Secrets management.
For more about the general structure of on-host integration configuration, see Configuration.
Data from this service is reported to an integration dashboard.
For more on how to find and use your data, see Understand integration data.
The Redis integration collects the following metric data attributes:
These attributes are attached to the
RedisSample event type:
Number of connected slaves.
Duration of the last AOF rewrite operation in milliseconds.
Boolean representing status of the last AOF background rewrite operation.
Boolean representing status of the last AOF write operation.
Number of evicted keys due to maxmemory limit per second.
Number of key expiration events per second.
Number of successful lookups of keys in the main dictionary per second.
Number of failed lookup of keys in the main dictionary per second.
Duration of the latest fork operation in milliseconds.
Boolean. A flag indicating a RDB save is ongoing.
Number of changes since the last dump.
Boolean representing the status of the last RDB save operation.
Duration of the last RDB save operation in milliseconds.
Epoch-based timestamp of last successful RDB save in seconds.
Count of the number times slaves have fully synchronized with this master.
Count of the number of times partial syncs have failed to complete.
Count of the number of times partial syncs have completed.
Number of clients pending on a blocking call (
The biggest input buffer among current client connections.
The longest output list among current client connections.
Number of commands processed by the server per second.
Number of client connections (excluding connections from slaves).
Number of connections accepted by the server per second.
Total number of bytes input per second.
Total number of bytes output per second.
Global number of pub/sub channels with client subscriptions.
Global number of pub/sub pattern with client subscriptions.
Number of connections per second rejected because of maxclients limit.
Number of milliseconds since Redis server start.
The amount of memory in bytes available in the instance where Redis is running.
System CPU consumed by the Redis server in milliseconds.
System CPU consumed by the background processes in milliseconds.
User CPU consumed by the Redis server in milliseconds.
User CPU consumed by the background processes in milliseconds.
The total number of bytes allocated by Redis using its allocator (either standard
Number of bytes used by the Lua engine.
The peak memory consumed by Redis in bytes.
Number of bytes that Redis allocated as seen by the operating system (also known as resident set size). This is the number reported by tools such as
The Redis integration collects the following keyspace metadata and metrics. These attributes are attached to the
RedisKeyspaceSample event type:
The average time to live (TTL) in milliseconds of keys that have an expiration set in the database being reported on.
Number of keys in the database being reported on.
Redis database index, which is the integer number (usually a number between
Number of keys with an expiration in the database being reported on.
Inventory data includes everything reported by the Redis
CONFIG GET command, with the exception of
requirepass, which stores the password to the Redis server. For more on inventory data, see Understand inventory data.
The Redis integration collects these additional attributes about your Redis service:
The version of the Redis server. Example:
This integration is open source software. That means you can browse its source code and send improvements, or create your own fork and build it.
If you need more help, check out these support and learning resources:
- Browse the Explorers Hub to get help from the community and join in discussions.
- Find answers on our sites and learn how to use our support portal.
- Run New Relic Diagnostics, our troubleshooting tool for Linux, Windows, and macOS.
- Review New Relic's data security and licenses documentation.