# 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_sentinel
# The monitoring i18n name
name:
zh-CN: Redis Sentinel
en-US: Redis Sentinel
# The description and help of this monitoring type
help:
zh-CN: Hertzbeat 对 Redis Sentinel 的通用指标进行采集监控。
您可以点击 “新建 Redis Cluster” 并进行配置,或者选择“更多操作”,导入已有配置。
en-US: Hertzbeat monitors Redis Database Sentinel'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 Sentinel 的通用指標進行采集監控。
您可以點擊 “新建 Redis Cluster” 並進行配置,或者選擇“更多操作”,導入已有配置。
helpLink:
zh-CN: https://hertzbeat.apache.org/zh-cn/docs/help/influxdb_promql
en-US: https://hertzbeat.apache.org/docs/help/influxdb_promql
# 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: 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: 26379
# 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,100000]'
# required-true or false
required: true
# 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: 2
# 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: 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: 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: 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: 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: 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: 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: 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: sentinel
# 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: sentinel_masters
type: 1
- field: sentinel_tilt
type: 1
- field: sentinel_running_scripts
type: 1
- field: sentinel_scripts_queue_length
type: 1
- field: sentinel_simulate_failure_flags
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^_^