elasticsearch - 将csv内容附加到现有的logstash索引

标签 elasticsearch logstash kibana-4 elastic-stack

我有一个文件夹,用户将在其中继续添加csv文件供logstash使用。用户将每天在此文件夹中添加csv文件。 csv文件的名称类似于yyyymmdd-dailyUsageData.csv,即文件名的前几个字符为日期。 CSV文件的内容将再次具有此Date值和其他一些列,即Date,colA,colB,colC等。要求是每天将csv文件的内容加载到logstash / elasticSearch中,以便在kibana中创建可视化效果。

尽管我可以对单个csv文件执行此操作,但是我不确定如何将第二天的csv文件的内容附加到已创建的索引中,该文件的名称带有不同的时间戳。以下是我创建的conf文件的示例:

 input {
      file {
        path => "/etc/logstash/20160302-dailyUsageData.csv"
        type => "usageData"
        start_position => "beginning"
        sincedb_path => "/home/ec2-user/mysincedbfile"
      }
    }
    filter {
      csv {
          separator => ","
          columns => ["Date","colA", "colB"]
      }
      mutate {convert => ["colA", "integer"]}
      mutate {convert => ["colB", "float"]}
    }
    output {  
        elasticsearch {
            action => "index"
            hosts => "localhost:9200"
            index => "dailyUsage"
        workers => 1
        }
        stdout {}
    }

最佳答案

您的file输入可以只使用a pattern for the path 而不是单个文件

  file {
    path => "/etc/logstash/*.csv"
    type => "usageData"
    start_position => "beginning"
    sincedb_path => "/home/ec2-user/mysincedbfile"
  }

关于elasticsearch - 将csv内容附加到现有的logstash索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36789476/

相关文章:

python - yocto linux 上基于 python 脚本的性能评估

elasticsearch - 如何使用Logstash将数据上传到现有索引?

elasticsearch - 使用ELK查找丢失的日志

elasticsearch - Elasticsearch汇总结果

elasticsearch - 错误 : [bool] query does not support [term]

elasticsearch - 为什么有这么多 ES java 客户端?

elasticsearch - 如何在ELK堆栈中使用Elasticsearch查询获取数组的长度?

elasticsearch - 在Kibana可视化中编写动态Elasticsearch查询的脚本?

elasticsearch - Docker 上的 Kibana 无法连接到 Elasticsearch

elasticsearch - Elasticsearch-小于-1个字节的值不受查询节点支持