Docs » Available host and application monitors » Configure application receivers for databases » Redis

Redis πŸ”—

Description πŸ”—

The Splunk Distribution of OpenTelemetry Collector deploys this integration as the Redis monitor type for the Smart Agent Receiver.

Using the Redis monitor, you can capture the following metrics:

  • Memory used

  • Commands processed per second

  • Number of connected clients and followers

  • Number of blocked clients

  • Number of keys stored per database

  • Uptime

  • Changes since last save

  • Replication delay per follower

It accepts endpoints and allows multiple instances.

Note

This monitor is not available on Windows as collectd plugins are only supported in Linux and Kubernetes.

Requirements πŸ”—

The monitor supports Redis 2.8 and higher.

Benefits πŸ”—

After you configure the integration, you can access these features:

  • View metrics. You can create your own custom dashboards, and most monitors provide built-in dashboards as well. For information about dashboards, see View dashboards in Observability Cloud.

  • View a data-driven visualization of the physical servers, virtual machines, AWS instances, and other resources in your environment that are visible to Infrastructure Monitoring. For information about navigators, see Splunk Infrastructure Monitoring navigators.

  • Access the Metric Finder and search for metrics sent by the monitor. For information, see Use the Metric Finder.

Installation πŸ”—

Follow these steps to deploy this integration:

  1. Deploy the Splunk Distribution of OpenTelemetry Collector to your host or container platform:

  2. Configure the monitor, as described in the Configuration section.

  3. Restart the Splunk Distribution of OpenTelemetry Collector.

Configuration πŸ”—

To use this integration of a Smart Agent monitor with the Collector:

  1. Include the Smart Agent receiver in your configuration file.

  2. Add the monitor type to the Collector configuration, both in the receiver and pipelines sections.

Note

Provide a Redis monitor entry in your Collector or Smart Agent (deprecated) configuration. Use the appropriate form for your agent type.

Splunk Distribution of OpenTelemetry Collector πŸ”—

To activate this monitor in the Splunk Distribution of OpenTelemetry Collector, add the following to your agent configuration:

receivers:
  smartagent/redis:
    type: collectd/redis
    ...  # Additional config

To complete the monitor activation, you must also include the smartagent/redis receiver item in a metrics pipeline. To do this, add the receiver item to the service > pipelines > metrics > receivers section of your configuration file. For example:

service:
  pipelines:
    metrics:
      receivers: [smartagent/redis]

Smart Agent πŸ”—

To activate this monitor in the Smart Agent, add the following to your agent configuration:

monitors:  # All monitor config goes under this key
  - type: collectd/redis
    ...  # Additional config

The following example shows you a YAML configuration file for the Smart Agent:

monitors:
- type: collectd/redis
  host: 127.0.0.1
  port: 9100

The next example shows you a YAML configuration file that includes list length monitoring:

monitors:
- type: collectd/redis
  host: 127.0.0.1
  port: 9100
  sendListLengths:
  - databaseIndex: 0
    keyPattern: 'mylist*'

See Install and configure the SignalFx Smart Agent for an autogenerated example of a YAML configuration file, with default values where applicable.

Configuration settings πŸ”—

The following table shows the configuration options for the Redis monitor:

Option

Required

Type

Description

host

Yes

string

port

Yes

integer

pythonBinary

No

string

Path to the Python binary. If you don’t provide a path, the monitor uses its built-in runtime. The string can include arguments to the binary.

name

No

string

Name for the Redis instance. The maximum length is 64 characters. The default value is β€œ{host}:{port}”.

auth

No

string

Authentication password.

sendListLengths

No

list of objects (see below)

List of keys that you want to monitor for length. To learn more, see the section Monitor the length of Redis lists.

verbose

No

bool

Flag that controls verbose logging for the plugin. If true, verbose logging is activated. The default value isfalse.

The following table shows you the configuration options for the sendListLengths configuration object:

Option

Required

Type

Description

databaseIndex

Yes

integer

The database index

keyPattern

Yes

string

A string or pattern to use for selecting keys. A string selects a single key. A pattern that uses * as a glob style wildcard processes all keys that match the pattern. Surround a pattern with single quotes (β€˜), for example 'mylist*'

Monitor the length of Redis lists πŸ”—

To monitor the length of list keys, you must specify the key and database index in the configuration using the following syntax:

sendListLengths: [{databaseIndex: $db_index, keyPattern: "$key_name"}]

You can specify $key_name as a glob-style pattern. The only supported wildcard is * . When you use a pattern, the configuration processes all keys that match the pattern.

To ensure that the * is interpreted correctly, surround the pattern with double quotes (""). When a nonlist key matches the pattern, the Redis monitor writes an error to the agent logs.

In Observability Cloud, gauge.key_llen is the metric name for Redis list key lengths. Observability Cloud creates a separate MTS for each Redis list.

Notes:

  1. The Redis monitor uses the KEYS command to match patterns. Because this command isn’t optimized, you need to keep your match patterns small. Otherwise, the command can block other commands from executing.

  2. To avoid duplicate reporting, choose a single node in which to monitor list lengths. You can use the main node configuration or a follower node configuration.

Metrics πŸ”—

The following metrics are available for this integration:

Notes πŸ”—

  • Learn more about the available metric types in Observability Cloud.

  • Default metrics are those metrics included in host-based subscriptions in Observability Cloud, such as host, container, or bundled metrics. Custom metrics are not provided by default and might be subject to charges. See more about metric categories.

  • To add additional metrics, see how to configure extraMetrics using the Collector.

Database Query Performance πŸ”—

You can troubleshoot Redis command performance issues using Database Query Performance in Splunk APM.

Get help πŸ”—

If you are not able to see your data in Splunk Observability Cloud, try these tips:

To learn about even more support options, see Splunk Customer Success.