2017-12-02 8 views
1

私はcsvファイルのデータをlogstashを使用して弾性検索に入力しようとしています。私のlogsatsh設定ファイルは次のようになります:logstash設定ファイルのエラー

input { 
    file { 
     path => "C:\Users\shreya\Data\RetailData.csv" 
     start_position => "beginning" 
     #sincedb_path => "C:\Users\shreya\null" 

    } 
} 
filter { 
    csv { 
     separator => "," 
     id => "Store_ID" 
     columns => ["Store","Date","Temperature","Fuel_Price", "MarkDown1", "MarkDown2", "MarkDown3", "MarkDown4", "CPI", "Unemployment", "IsHoliday"] 
    } 
    mutate {convert => ["Store", "integer"]} 
    mutate {convert => ["Date", "date"]} 
    mutate {convert => ["Temperature", "float"]} 
    mutate {convert => ["Fuel_Price", "float"]} 
    mutate {convert => ["CPI", "float"]} 
    mutate {convert => ["Unemployment", "float"]} 


} 
output { 
    elasticsearch { 
     action => "index" 
     hosts => "localhost:9200" 
     index => "store" 
     document_type => "store_retail"  
    } 
    stdout {} 
    #stdout { 
    #  codec => rubydebug 
    #} 
} 

しかし、私はエラーが発生しており、それを解決する方法を見つけることができません。私はlogstashを初めて使う人です。エラーログは次のようになります。

[2017-12-02T15:56:38,150] [INFO] [logstash.modules.scaffold]モジュールの初期化{module_name => "fb_apache"、:directory => "C:モジュールを初期化する{:module_name => "netflow"//Users/shreya/logstash-6.0.0/modules/fb_apache/configuration "} [2017-12-02T15:56:38,165] [INFO] [logstash.modules.scaffold] 、:directory => "C:/Users/shreya/logstash-6.0.0/modules/netflow/configuration"} [2017-12-02T15:56:38,243] [警告] [logstash.config.source.multilocal]モジュールまたはコマンドラインオプションが指定されているため、 'pipelines.yml'ファイルが無視される [INFO] [logstash.agent] Logstash APIエンドポイントが正常に起動しました{:port => 9600} [ 2017-12-02T15:56:42,965] [WARN] [logstash.outputs.elasticsearch]あなたはdeprecを使用していますelasticsearchで設定されたated設定の "document_type"廃止予定の設定は引き続き機能しますが、今後はlogstashから削除する予定です。 Elasticsearch 6.0ではドキュメントタイプが推奨されなくなり、7.0で完全に削除されました。この機能を避ける必要があります。ご不明な点がございましたら、freenode ircの#logstashチャンネルをご覧ください。 "store"、 "store_retail"、id => "91a4406a13e9377abb312acf5f6be8e609a685f9c84a5906af957e956119798c">}:{"name =>" document_type "、:plugin =>" index "、hosts => [" localhost:9200 "]、 [INFO] [logstash.outputs.elasticsearch]拡張検索プールのURLが更新されました{:変更された=> {:削除済み=> []、:added => [http://localhost:9200/]}} [2017 -12-02T15:56:43,604] [INFO] [logstash.outputs.elasticsearch] Elasticsearch接続が正常に動作しているかどうかを確認する{:healthcheck_url =>http://localhost:9200/、:path => "/"} [2017-12 -02T15:56:43,854] [WARN] [logstash.outputs.elasticsearch] ESインスタンスへの接続を復元しました{:url => "http://localhost:9200/"} [2017-12-02T15:56:43,932] [INFO] [logstash.outputs .elasticsearch] {:path => nil}のマッピングテンプレートを使用 [2017-12-02T15:56:43,933] [INFO] [logstash。テンプレートをインストールしようとしています:{"template" => "logstash-"、 "version" => 60001、 "settings" => {"index.refresh_interval" => "5s" "マッピング" => {"_デフォルト_" => {"dynamic_templates" => [{"message_field" => {"path_match" => "メッセージ"、 "match_mapping_type" => "文字列"、 "マッピング" => {"string_fields" => {"match" => ""、 "match_mapping_type" => "文字列"、 "マッピング" => {" "ignore_above" => 256}}}}}] ">" text "、" norms "=> false、" fields "=> {" keyword "=> {" type "="プロパティ "=> {" @タイムスタンプ "=> {" type "=>" date "}、" @version "=> {" type "=>"キーワード "}、" geoip "=> {" dynamic "=> true "、" properties "=> {" ip "=> {" type "=>" ip "}、" location "=> {" type "=>" geo_point "}、" latitude "=> {" type "= >「half_float」}、「longitude」=> {"type" => "half_float"}}}}}}} [2017-12-02T15:56:43,964] [INFO] [logstash.outputs.elasticsearch]新しいElasticsearch出力{:class => "LogStash :: Outputs :: ElasticSearch"、:hプラグインを登録中にエラーが発生しました:osts => ["localhost:9200"]} [2017-12-02T15:56:44,011] [ERROR] [logstash.pipeline] #、@ metric_events_time = org.jruby.proxy.org.logstash.instrument.metrics.counter.LongCounter $ Proxy2 - 名前空間:[統計情報、パイプライン、プラグイン、フィルター、e3501f879986420bd95a59d8a1c006d9bc4351a481c96bd5366e7edb54bc6fbb、events]キー:duration_in_millis値:0、 @statuss::パイプライン、:main @@@@@@@@@ "e3501f879986420bd95a59d8a1c006d9bc4351a481c96bd5366e7edb54bc6fbb"、@ klass = LogStash :: Filters :: Mutate、@ metric_events =#、@ structured_lookup_mutex =#、@fast_lookup =#>>>、@namespace_name = 、:プラグイン:フィルター:e3501f879986420bd95a59d8a1c006d9bc4351a481c96bd5366e7edb54bc6fbb、:イベント]>、@Filter = {\ "日付\" => \ "日付\"}、ID => \ "e3501f879986420bd95a59d8a1c006d9bc4351a481c96bd5366e7edb54bc6fbb \"、enable_metric => trueを、periodic_flush => false >> "、:error =>"翻訳が見つかりません:en.logstash.agent.configuration.invalid_plugin_register "、:thread =>"# " } [2017-12-02T15:56:44,042] [ERROR] [logstash。パイプライン]パイプラインがエラー{:pipeline_id => "main"、:exception#>、バックトレース=> ["C:/Users/shreya/logstash-6.0.0/vendor/bundle/jruby/2.3.0" block in register'", "org/jruby/RubyHash.java:1343:in /gems/logstash-filter-mutate-3.1.6/lib/logstash/filters/mutate.rb:186:in各「 "" C:/Users/shreya/logstash-6.0.0/vendor/bundle/jruby /2.3.0/gems/logstash-filter-mutate-3.1.6/lib/logstash/filters/mutate.rb:184:in register'", "C:/Users/shreya/logstash-6.0.0/logstash-core/lib/logstash/pipeline.rb:388:in register_plugin' "" C:/Users/shreya/logstash-6.0.0/logstash -core/libに/ logstash/pipeline.rb:399:block in register_plugins'", "org/jruby/RubyArray.java:1734:in各「中 "" C:/Users/shreya/logstash-6.0.0/logstash-core/lib/logstash/pipeline.rb:399:register_plugins'", "C:/Users/shreya/logstash-6.0.0/logstash-core/lib/logstash/pipeline.rb:801:in maybe_setup_out_pluginsで「」、 "C:/Users/shreya/logstash-6.0.0/logstash-core/lib/logstash/pipeline.rb:409:start_workers'", "C:/Users/shreya/logstash-6.0.0/logstash-core/lib/logstash/pipeline.rb:333:in実行で""、" C:/Users/shreya/logstash-6.0.0開始 'で `ブロック/logstash-core/lib/logstash/pipeline.rb:293:in "]:スレッド=>" #"} [2017-12-02T15:56:44058] [ERROR] [logstash。エージェント]元に失敗しましたLogStash :: ConvergeResult :: FailedAction、:message => "アクションを実行できませんでした:LogStash :: PipelineAction :: Create/pipeline_id:main、action_result:false"、:バックトレース=> nilの}

答えて

1

問題はのmutateフィルタの一つにコンバート対象から来ています。 documentation

有効な変換ターゲットは、integer、float、string、およびbooleanです。

だから、この部分は、クラッシュを引き起こしている:

mutate {convert => ["Date", "date"]} 

日付に文字列を変換したい場合は、日付フィルタを使用する必要があります。

+0

ありがとう@baudsp。日付フィルタは魅力的に機能しました。 – Siena

関連する問題