# Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # The monitoring type category:service-application service monitoring db-database monitoring mid-middleware custom-custom monitoring os-operating system monitoring category: cache # The monitoring type eg: linux windows tomcat mysql aws... app: redis_cluster # The monitoring i18n name name: zh-CN: Redis Cluster en-US: Redis Cluster # The description and help of this monitoring type help: zh-CN: Hertzbeat 对 Redis 集群 的通用指标进行采集监控。
您可以点击 “新建 Redis Cluster” 并进行配置,或者选择“更多操作”,导入已有配置。 en-US: Hertzbeat monitors Redis Database Cluster's general performance metrics. You could click the "New Redis Cluster" button and proceed with the configuration or import an existing setup through the "More Actions" menu. zh-TW: Hertzbeat 對 Redis 集群 的通用指標進行采集監控。
您可以點擊 “新建 Redis Cluster” 並進行配置,或者選擇“更多操作”,導入已有配置。 helpLink: zh-CN: https://hertzbeat.apache.org/zh-cn/docs/help/redis_cluster en-US: https://hertzbeat.apache.org/docs/help/redis_cluster # Input params define for monitoring(render web ui by the definition) params: # field-param field key - field: host # name-param field display i18n name name: zh-CN: 目标Host en-US: Target Host # type-param field type(most mapping the html input type) type: host # required-true or false required: true # field-param field key - field: port # name-param field display i18n name name: zh-CN: 端口 en-US: Port # type-param field type(most mapping the html input type) type: number # when type is number, range is required range: '[0,65535]' # required-true or false required: true # default value defaultValue: 6379 # field-param field key - field: timeout # name-param field display i18n name name: zh-CN: 查询超时时间(ms) en-US: Query Timeout(ms) # type-param field type(most mapping the html input type) type: number # when type is number, range is required range: '[0,65535]' # required-true or false required: false # default value defaultValue: 3000 # field-param field key - field: username # name-param field display i18n name name: zh-CN: 用户名 en-US: Username # type-param field type(most mapping the html input type) type: text # when type is text, use limit to limit string length limit: 20 # required-true or false required: false # field-param field key - field: password # name-param field display i18n name name: zh-CN: 密码 en-US: Password # type-param field type(most mapping the html input tag) type: password # required-true or false required: false # field-param field key - field: pattern # name-param field display i18n name name: zh-CN: 模式 en-US: Pattern # type-param field type(most mapping the html input type) type: number # required-true or false required: true # default value defaultValue: 3 # hide-is hide this field and put it in advanced layout hide: true metrics: - name: server # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 0 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: redis_version type: 1 - field: redis_git_sha1 type: 0 - field: redis_git_dirty type: 0 - field: redis_build_id type: 1 - field: redis_mode type: 1 - field: os type: 1 - field: arch_bits type: 0 - field: multiplexing_api type: 1 - field: atomicvar_api type: 1 - field: gcc_version type: 1 - field: process_id type: 0 - field: process_supervised type: 1 - field: run_id type: 1 - field: tcp_port type: 0 - field: server_time_usec type: 0 - field: uptime_in_seconds type: 0 - field: uptime_in_days type: 0 - field: hz type: 0 - field: configured_hz type: 0 - field: lru_clock type: 0 - field: executable type: 1 - field: config_file type: 1 - field: io_threads_active type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: clients # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 1 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: connected_clients type: 0 - field: cluster_connections type: 0 - field: maxclients type: 0 - field: client_recent_max_input_buffer type: 0 - field: client_recent_max_output_buffer type: 0 - field: blocked_clients type: 0 - field: tracking_clients type: 0 - field: clients_in_timeout_table type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: memory # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 2 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: used_memory type: 0 - field: used_memory_human type: 0 unit: MB - field: used_memory_rss type: 0 - field: used_memory_rss_human type: 0 unit: MB - field: used_memory_peak type: 0 - field: used_memory_peak_human type: 0 unit: MB - field: used_memory_peak_perc type: 0 unit: '%' - field: used_memory_overhead type: 0 - field: used_memory_startup type: 0 - field: used_memory_dataset type: 0 - field: used_memory_dataset_perc type: 0 unit: '%' - field: allocator_allocated type: 0 - field: allocator_active type: 0 - field: allocator_resident type: 0 - field: total_system_memory type: 0 - field: total_system_memory_human type: 0 unit: GB - field: used_memory_lua type: 0 - field: used_memory_lua_human type: 0 unit: KB - field: used_memory_scripts type: 0 - field: used_memory_scripts_human type: 0 unit: KB - field: number_of_cached_scripts type: 0 - field: maxmemory type: 0 - field: maxmemory_human type: 0 unit: MB - field: maxmemory_policy type: 1 - field: allocator_frag_ratio type: 0 - field: allocator_frag_bytes type: 0 - field: allocator_rss_ratio type: 0 - field: allocator_rss_bytes type: 0 - field: rss_overhead_ratio type: 0 - field: rss_overhead_bytes type: 0 - field: mem_fragmentation_ratio type: 0 - field: mem_fragmentation_bytes type: 0 - field: mem_not_counted_for_evict type: 0 - field: mem_replication_backlog type: 0 - field: mem_clients_slaves type: 0 - field: mem_clients_normal type: 0 - field: mem_aof_buffer type: 0 - field: mem_allocator type: 1 - field: active_defrag_running type: 0 - field: lazyfree_pending_objects type: 0 - field: lazyfreed_objects type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: persistence # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 3 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: loading type: 0 - field: current_cow_size type: 0 - field: current_cow_size_age type: 0 - field: current_fork_perc type: 0 - field: current_save_keys_processed type: 0 - field: current_save_keys_total type: 0 - field: rdb_changes_since_last_save type: 0 - field: rdb_bgsave_in_progress type: 0 - field: rdb_last_save_time type: 0 - field: rdb_last_bgsave_status type: 1 - field: rdb_last_bgsave_time_sec type: 0 - field: rdb_current_bgsave_time_sec type: 0 - field: rdb_last_cow_size type: 0 - field: aof_enabled type: 0 - field: aof_rewrite_in_progress type: 0 - field: aof_rewrite_scheduled type: 0 - field: aof_last_rewrite_time_sec type: 0 - field: aof_current_rewrite_time_sec type: 0 - field: aof_last_bgrewrite_status type: 1 - field: aof_last_write_status type: 1 - field: aof_last_cow_size type: 0 - field: module_fork_in_progress type: 0 - field: module_fork_last_cow_size type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: stats # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 4 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: total_connections_received type: 0 - field: total_commands_processed type: 0 - field: instantaneous_ops_per_sec type: 0 - field: total_net_input_bytes type: 0 - field: total_net_output_bytes type: 0 - field: instantaneous_input_kbps type: 0 - field: instantaneous_output_kbps type: 0 - field: rejected_connections type: 0 - field: sync_full type: 0 - field: sync_partial_ok type: 0 - field: sync_partial_err type: 0 - field: expired_keys type: 0 - field: expired_stale_perc type: 0 - field: expired_time_cap_reached_count type: 0 - field: expire_cycle_cpu_milliseconds type: 0 - field: evicted_keys type: 0 - field: keyspace_hits type: 0 - field: keyspace_misses type: 0 - field: pubsub_channels type: 0 - field: pubsub_patterns type: 0 - field: latest_fork_usec type: 0 - field: total_forks type: 0 - field: migrate_cached_sockets type: 0 - field: slave_expires_tracked_keys type: 0 - field: active_defrag_hits type: 0 - field: active_defrag_misses type: 0 - field: active_defrag_key_hits type: 0 - field: active_defrag_key_misses type: 0 - field: tracking_total_keys type: 0 - field: tracking_total_items type: 0 - field: tracking_total_prefixes type: 0 - field: unexpected_error_replies type: 0 - field: total_error_replies type: 0 - field: dump_payload_sanitizations type: 0 - field: total_reads_processed type: 0 - field: total_writes_processed type: 0 - field: io_threaded_reads_processed type: 0 - field: io_threaded_writes_processed type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: replication # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 5 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: role type: 1 - field: connected_slaves type: 0 - field: master_failover_state type: 1 - field: master_replid type: 1 - field: master_replid2 type: 0 - field: master_repl_offset type: 0 - field: second_repl_offset type: 0 - field: repl_backlog_active type: 0 - field: repl_backlog_size type: 0 - field: repl_backlog_first_byte_offset type: 0 - field: repl_backlog_histlen type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: cpu # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 6 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: used_cpu_sys type: 0 - field: used_cpu_user type: 0 - field: used_cpu_sys_children type: 0 - field: used_cpu_user_children type: 0 - field: used_cpu_sys_main_thread type: 0 - field: used_cpu_user_main_thread type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: errorstats # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 8 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: errorstat_ERR type: 1 - field: errorstat_MISCONF type: 1 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: cluster # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 9 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: cluster_enabled type: 0 - field: cluster_state type: 1 - field: cluster_slots_assigned type: 0 - field: cluster_slots_ok type: 0 - field: cluster_slots_pfail type: 0 - field: cluster_slots_fail type: 0 - field: cluster_known_nodes type: 0 - field: cluster_size type: 0 - field: cluster_current_epoch type: 0 - field: cluster_my_epoch type: 0 - field: cluster_stats_messages_ping_sent type: 0 - field: cluster_stats_messages_pong_sent type: 0 - field: cluster_stats_messages_sent type: 0 - field: cluster_stats_messages_ping_received type: 0 - field: cluster_stats_messages_pong_received type: 0 - field: cluster_stats_messages_meet_received type: 0 - field: cluster_stats_messages_received type: 0 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: commandstats # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 9 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: cmdstat_set type: 1 - field: cmdstat_get type: 1 - field: cmdstat_setnx type: 1 - field: cmdstat_hset type: 1 - field: cmdstat_hget type: 1 - field: cmdstat_lpush type: 1 - field: cmdstat_rpush type: 1 - field: cmdstat_lpop type: 1 - field: cmdstat_rpop type: 1 - field: cmdstat_llen type: 1 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^ - name: keyspace # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue priority: 9 fields: # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field - field: identity type: 1 - field: db0 type: 1 - field: db1 type: 1 - field: db2 type: 1 - field: db3 type: 1 - field: db4 type: 1 - field: db5 type: 1 - field: db6 type: 1 - field: db7 type: 1 - field: db8 type: 1 - field: db9 type: 1 - field: db10 type: 1 - field: db11 type: 1 - field: db12 type: 1 - field: db13 type: 1 - field: db14 type: 1 - field: db15 type: 1 # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk protocol: redis # the config content when protocol is redis redis: # redis host: ipv4 ipv6 host host: ^_^host^_^ # redis port port: ^_^port^_^ # username username: ^_^username^_^ # password password: ^_^password^_^ # timeout unit:ms timeout: ^_^timeout^_^ pattern: ^_^pattern^_^