1 Star 0 Fork 0

antch_hw / logstash-filter-java_eastcom_filter-redis

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 2.71 KB
一键复制 编辑 原始数据 按行查看 历史
antch_hw 提交于 2019-11-06 15:48 . 去掉敏感信息

logstash_filter_redis_eastcom2

介绍

本项目旨在提供适合东信话单数据清洗的Logstash过滤器插件(依赖于Redis)。由于官方未提供基于Redis的技filter,因此只能自己动手。目前插件只哈希类型的查询。给定一个号码,查询号码的区号,省份,城市信息,检查找的信息,封装到事件中对应的新的字段中。(具有话单清洗的定制化特色)。

软件架构

输入图片说明

安装教程

  1. 首先需要熟悉Logstash官方关于Java插件开发的文档。文档地址https://www.elastic.co/guide/en/logstash/current/java-filter-plugin.html
  2. 下载Logstash的源代码https://github.com/elastic/logstash.git,下载之后,按照官方教程生成 logstash-core-x.y.z.jar 文件。
  3. git clone插件示例代码,地址https://github.com/logstash-plugins/logstash-filter-java_filter_example;
  4. 将下载的代码导入到Eclipse或者你喜欢的IDE(先安装一下Gradle);
  5. 然后按照官方的步骤,在项目根目录下创建 gradle.properties 文件,指定一下你刚才clone的logstash项目的本地路径;
  6. 接下来,你就有了可以使用的LogstashAPI了,可以开心的编码了;
  7. 打包,按照官方的教程生成gem文件;

使用说明

  1. 将生成的gem文件拷贝到你Logstash所在的机器(注意:**机器可以联网哦哦!!**有人说我的机器就是连不了网怎么办,那你先找个能上网的机器,插件安装好了,然后再把安装好插件的Logstash替换未安装的不就好了)。

  2. 执行命令:

    ./logstash-plugin install --no-verify --local your_plugin.gem
  3. 可以验证一下:

    ./logstash-plugin list
  4. 插件安装完成后就是需要配置了,下面给出一个配置示例,相关的解释也在注释中说明:

 java_filter_redis {
            host => "192.168.1.161"  # redis的地址
            port => 6379             # redis端口  
            password => "xxxx"   # redis密码
            source => "phoneNumber" # 要根据哪一个字段的值查询
            use_heap_cache_for_areacode => true # 是否根据区号查询
            from_to_target_field => {     # 哈希结构,每一对,第一个值是redis哈希中的字段名字,第二个是要生成的字段的名字
                "area_code" => "phoneNumber_code"
                "province" => "phoneNumber_province"
                "city" => "phoneNumber_city"
            }
        }

支持与反馈

  1. 有疑问请随时与我反馈。
  2. 有想法请与我联系。
Java
1
https://gitee.com/antch_hw/logstash-filter-java_eastcom_filter-redis.git
git@gitee.com:antch_hw/logstash-filter-java_eastcom_filter-redis.git
antch_hw
logstash-filter-java_eastcom_filter-redis
logstash-filter-java_eastcom_filter-redis
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891