logstash读取 Redis 数据

Redis 服务器是 logstash 官方推荐的 broker 选择。Broker 角色也就意味着会同时存在输入和输出俩个插件。这里我们先学习输入插件。

LogStash::Inputs::Redis 支持三种 data_type(实际上是redis_type),不同的数据类型会导致实际采用不同的 Redis 命令操作:
  • list => BLPOP

  • channel => SUBSCRIBE

  • pattern_channel => PSUBSCRIBE

注意到了么?这里面没有 GET 命令!

Redis 服务器通常都是用作 NoSQL 数据库,不过 logstash 只是用来做消息队列。所以不要担心 logstash 里的 Redis 会撑爆你的内存和磁盘。

配置示例

input {
        redis {
                host => "192.168.1.20"
                port => 8079
                type => "redis-input"
                data_type => "list"
                key => "key_count"
        }
}
output {
        stdout {}
        elasticsearch {
                hosts => ["192.168.1.20:9200"]
        }
}

results for ""

    No results matching ""