-- 导入必要的模块
local redis = require 'redis'
 
-- 连接Redis
local client = redis.connect('127.0.0.1', 6379)
 
-- 定义要监控的Redis指标
local monitored_metrics = {
  'used_memory',
  'used_memory_human',
  'used_memory_rss_human',
  'used_cpu_sys',
  'used_cpu_user',
  'used_cpu_sys_children',
  'used_cpu_user_children',
  'connected_clients',
  'blocked_clients',
  'tracking_total_keys',
  'tracking_total_items',
  'tracking_total_prefixes',
  'expired_keys',
  'evicted_keys',
  'keyspace_hits',
  'keyspace_misses',
  'pubsub_channels',
  'pubsub_patterns',
  'latest_fork_usec'
}
 
-- 获取所有监控指标的函数
local function get_all_metrics(client)
  local metrics = {}
  for _, metric in ipairs(monitored_metrics) do
    metrics[metric] = client:get_metric(metric)
  end
  return metrics
end
 
-- 获取单个监控指标的函数
local function get_metric(client, metric)
  return client:get_metric(metric)
end
 
-- 使用示例
local metrics = get_all_metrics(client)
for name, value in pairs(metrics) do
  print(name, value)
end这段代码演示了如何使用Lua语言和redis-lua模块来监控Redis的关键性能指标。代码中定义了要监控的指标列表,并提供了获取所有指标和获取单个指标的函数。最后,给出了如何使用这些函数来获取并打印出监控指标的例子。这是一个实战中的例子,展示了如何将这些概念应用到实际的应用程序中。