0
postgresqlからレコードを引き出し、弾性検索で文書を作成しているログ隠しがありますが、postgresのレコードを更新しようとしているときは常に弾性検索に反映されません。ここは私の入力です& OUTPUT私がここに何かが欠けているかどうか私に知らせてください。文書の更新
input {
jdbc {
# Postgres jdbc connection string to our database, mydb
jdbc_connection_string => "jdbc:postgresql://127.0.0.1:5009/data"
# The user we wish to execute our statement as
jdbc_user => "data"
jdbc_password=>"data"
# The path to our downloaded jdbc driver
jdbc_driver_library => "/postgresql-9.4.1209.jar"
# The name of the driver class for Postgresql
jdbc_driver_class => "org.postgresql.Driver"
#sql_log_level => "debug"
jdbc_paging_enabled => "true"
jdbc_page_size => "5000"
schedule => "* * * * *"
# our query
clean_run => true
last_run_metadata_path => "/logstash/.test_metadata"
#use_column_value => true
#tracking_column => id
statement => "SELECT id,name,update_date from data where update_date > :sql_last_value"
}
}
output {
elasticsearch{
hosts => ["127.0.0.1"]
index => "test_data"
action => "index"
document_type => "data"
document_id => "%{id}"
upsert => ' {
"name" : "%{data.name}",
"update_date" : "%{data.update_date}"
} '
}
}
おかげで、私はtracking_column => UPDATE_DATE 声明=> "ID、名前、データID>からUPDATE_DATE SELECT:sql_last_valueを" – GG0424
以下に変更する必要があります 'あなたは、デフォルトでとして' tracking_column'も 'use_column_value'が必要でもない – GG0424
:sql_last_value'にはタイムスタンプが含まれます – Val