Redis
Introduction
Redis is an open-source, in-memory data structure store, commonly used as a cache or message broker. It provides fast access to data through key-value pairs and supports various data structures like strings, hashes, lists, sets, and more.
Getting Started
Compatibility
The Redis O11ySource is compatible with all versions equal to or greater than 6.1.
Data Collection Method
vuSmartMaps collects health and performance data for Redis using VuNet's Healthbeat agent. This agent collects data based on the source configuration.
Prerequisites
Dependent Configuration
To configure this O11ySource, create a 'credential' of type 'user' under the 'Definition' tab.
Inputs for Configuring Data Source
- Host: The IP Address/FQDN of the Redis server.
- Port: Provide the Redis port details.
- Authentication Type: Select the type of authentication for Redis.
- Cluster ID: Provide a unique string to identify the Redis cluster to which the host belongs. A Redis cluster is a set of replicated Redis nodes with master and slave roles. This will help in filtering out dashboards cluster wise.
- Period: How frequently data is gathered. The period should be between 60 seconds - 3000 seconds.
Firewall Requirement
To collect data from this O11ySource, ensure the following ports are opened:
Source IP | Destination IP | Destination Port | Protocol | Direction |
---|---|---|---|---|
IP address of the server where Redis is installed | vuSmartMaps Data Collector End Point | 9092* | TCP | Inbound |
*Before providing the firewall requirements, please update the port based on the customer environment.
Configuring the Target
Healthbeat should be installed and running in the server where Redis is installed.
Configuration Steps
Enable
the Redis O11ySource.- Select the Sources tab and press the
+
button to add a new Redis instance to be monitored. - Add the required details and then click on
Next
. - The following packages will be available for download based on the OS:Download <OS> Healthbeat Installation Binary - Downloads the full Healthbeat package with required configurations for a fresh installationDownload <OS> Healthbeat Update Configuration Binary - Downloads the agent configuration package to update an existing Healthbeat installation
- Download the agent installation or update package, then click
Finish
to close the data source window.
Metrics Collected
Name | Description | Data Type |
---|---|---|
@timestamp | The original timestamp as a string. | String |
timestamp | The timestamp with high precision, including milliseconds. | Datetime64 |
OS | The operating system name. | LowCardinality(String) |
Owner | The owner or administrator of the system. | LowCardinality(String) |
Role | The role assigned to the host (e.g., database, application server). | LowCardinality(String) |
beat_hostname | The hostname where the beat (data shipper) is running. | LowCardinality(String) |
ecs_version | ECS (Elastic Common Schema) version being used. | LowCardinality(String) |
event_dataset | Dataset name for the event. | LowCardinality(String) |
event_duration | Duration of the event in milliseconds. | UInt32 |
event_module | The module generating the event (e.g., Redis, PostgreSQL). | LowCardinality(String) |
host | Host identifier or name. | LowCardinality(String) |
host_info_architecture | Architecture of the host (e.g., x86_64). | LowCardinality(String) |
host_info_containerized | Whether the host is running inside a container. | Bool |
host_info_hostname | The hostname of the machine. | LowCardinality(String) |
host_info_id | A unique identifier for the host. | String |
host_info_name | The human-readable name of the host. | LowCardinality(String) |
host_info_os_codename | Codename of the operating system. | LowCardinality(String) |
host_info_os_family | Family of the operating system (e.g., Linux, Windows). | LowCardinality(String) |
host_info_os_kernel | The kernel version of the operating system. | LowCardinality(String) |
host_info_os_name | Name of the operating system. | LowCardinality(String) |
host_info_os_platform | Platform of the operating system (e.g., ubuntu, centos). | LowCardinality(String) |
host_info_os_type | Type of the operating system (e.g., system, container). | LowCardinality(String) |
host_info_os_version | Version of the operating system. | LowCardinality(String) |
metricset_name | Name of the metricset being collected. | LowCardinality(String) |
metricset_period | The interval in milliseconds at which the metricset runs. | UInt32 |
os_full | Full details about the operating system. | LowCardinality(String) |
period | Period in seconds. | Float32 |
process_pid | Process ID of the related process. | UInt32 |
redis_info_clients_blocked | Number of blocked clients in Redis. | UInt32 |
redis_info_clients_connected | Number of connected clients in Redis. | UInt32 |
redis_info_clients_max_input_buffer | Maximum input buffer size for clients in Redis. | UInt32 |
redis_info_clients_max_output_buffer | Maximum output buffer size for clients in Redis. | UInt32 |
redis_info_cluster_enabled | Indicates if Redis clustering is enabled. | Bool |
redis_info_commandstats_* | Various statistics related to Redis commands (calls, time usage, etc.). | Various |
redis_info_cpu_* | CPU usage statistics for Redis, including system and user time. | Various |
redis_info_memory_* | Memory usage statistics for Redis, including fragmentation and allocation details. | Various |
redis_info_persistence_* | Persistence-related statistics for Redis, including AOF and RDB configurations. | Various |
redis_info_replication_* | Replication-related details for Redis, including slave status and backlog information. | Various |
redis_info_server_* | General server information for Redis, such as version and uptime. | Various |
redis_info_stats_* | Redis performance and usage statistics, such as processed commands and network usage. | Various |
service_address | The address of the monitored service. | LowCardinality(String) |
service_type | Type of service being monitored (e.g., Redis, MySQL). | LowCardinality(String) |
service_version | Version of the service being monitored. | LowCardinality(String) |
target | The target for metrics collection. | LowCardinality(String) |
type | The type of data being collected. | LowCardinality(String) |
fields_host_ip | IP address of the host. | String |
fields_cluster_id | Identifier for the cluster. | String |
@timestamp | The original timestamp as a string. | String |
timestamp | High-precision timestamp including milliseconds. | Datetime64 |
OS | Operating system name (e.g., Linux, Windows). | LowCardinality(String) |
Owner | Owner or administrator of the system. | String |
Role | Role assigned to the host (e.g., database, application server). | LowCardinality(String) |
beat_hostname | Hostname of the machine where the beat (data shipper) is running. | LowCardinality(String) |
ecs_version | Version of the Elastic Common Schema (ECS) used. | LowCardinality(String) |
event_dataset | Dataset associated with the event. | LowCardinality(String) |
event_duration | Duration of the event in milliseconds. | UInt32 |
event_module | The module generating the event (e.g., Redis, PostgreSQL). | LowCardinality(String) |
host | Host identifier or name. | LowCardinality(String) |
host_info_architecture | Host system architecture (e.g., x86_64). | LowCardinality(String) |
host_info_containerized | Whether the host is running inside a container. | Bool |
host_info_hostname | Hostname of the machine. | LowCardinality(String) |
host_info_id | Unique identifier for the host. | String |
host_info_name | Human-readable name of the host. | LowCardinality(String) |
host_info_os_codename | Codename of the operating system. | LowCardinality(String) |
host_info_os_family | Family of the operating system (e.g., Linux, Windows). | LowCardinality(String) |
host_info_os_kernel | Kernel version of the operating system. | LowCardinality(String) |
host_info_os_name | Name of the operating system. | LowCardinality(String) |
host_info_os_platform | Platform of the operating system (e.g., Ubuntu, CentOS). | LowCardinality(String) |
host_info_os_type | Type of the operating system (e.g., system, container). | LowCardinality(String) |
host_info_os_version | Version of the operating system. | LowCardinality(String) |
metricset_name | Name of the metricset being collected. | LowCardinality(String) |
metricset_period | Interval in milliseconds at which the metricset runs. | UInt32 |
period | Period in seconds for metrics collection. | Float32 |
service_address | Address of the service being monitored. | LowCardinality(String) |
service_type | Type of the monitored service (e.g., Redis, MySQL). | LowCardinality(String) |
target | Target being monitored for metrics. | LowCardinality(String) |
type | Type of data or event. | LowCardinality(String) |
redis_keyspace_avg_ttl | Average time-to-live (TTL) for keys in the Redis keyspace. | UInt32 |
redis_keyspace_expires | Number of keys with expiration set in the Redis keyspace. | UInt32 |
redis_keyspace_keys | Total number of keys in the Redis keyspace. | UInt32 |
redis_keyspace_id | Identifier for the Redis keyspace. | String |
redis_key_expire_ttl | Time-to-live (TTL) for a specific Redis key. | Int32 |
redis_key_id | Unique identifier for a Redis key. | String |
redis_key_length | Length of the Redis key (e.g., size of list, set, or string). | UInt32 |
redis_key_name | Name of the Redis key. | String |
redis_key_type | Type of the Redis key (e.g., string, list, hash). | LowCardinality(String) |
fields_host_ip | IP address of the host machine. | String |
fields_cluster_id | Identifier for the cluster where the host belongs. | String |