2017-01-05 7 views
0

私はこのlogstash設定ファイルを持っていますが、クエリは10547を返しますが、elasticsearchでは10500と表示されます。 データが大きくなると明らかに損失が増えます。logstashとelasticsearchにデータがありません

なぜですか?

input { 
    jdbc { 
     # Postgres jdbc connection string to our database, mydb 
     jdbc_connection_string => "jdbc:mysql://outsystemsdemomysql.cxxhlwetgta3.us-east-1.rds.amazonaws.com:3306/outsystems1" 
     # The user we wish to execute our statement as 
     jdbc_user => "xxxxx" 
     jdbc_password => "xxxxx" 
     # The path to our downloaded jdbc driver 
     jdbc_driver_library => "mysql-connector-java-5.1.40-bin.jar" 
     # The name of the driver class for Postgresql 
     jdbc_driver_class => "com.mysql.jdbc.Driver" 
     # our query 
     statement => "SELECT OSUSR_QP0_CONTACT.ID, 
CASE WHEN OSUSR_QP0_CONTACT.NAME='' THEN 'Unknown' ELSE OSUSR_QP0_CONTACT.NAME END name, 
OSUSR_QP0_CONTACT.TITLE,OSUSR_QP0_CONTACT.PHONE,OSUSR_QP0_CONTACT.ADDRESS,OSUSR_QP0_CONTACT.EMAIL,OSUSR_QP0_ORGANIZATIONTYPE.AKA OrgType 
FROM OSUSR_QP0_CONTACT 
LEFT JOIN OSUSR_qp0_Organization ON (OSUSR_QP0_CONTACT.ORGANIZATIONID=OSUSR_qp0_Organization.ID) 
LEFT JOIN OSUSR_QP0_ORGANIZATIONTYPE ON (OSUSR_qp0_Organization.TYPE=OSUSR_QP0_ORGANIZATIONTYPE.ID) 
WHERE OSUSR_QP0_CONTACT.ARCHIVED = 0" 
    } 
} 
output { 
    amazon_es { 
     hosts => ["search-prochamps-nzv5olnw2mloxwiqd7s3o557we.us-east-1.es.amazonaws.com"] 
     region => "us-east-1" 
     # aws_access_key_id, aws_secret_access_key optional if instance profile is configured 
     aws_access_key_id => "xxxxx" 
     aws_secret_access_key => "xxxx" 
     index => "crm" 
     document_type => "contacts" 
     document_id => "%{id}" 

    } 


} 
+0

、私は2つの貴様のソリューションを使用しています: 1.デバッグモードでlogstashを使用して、失敗した要求されているものを見るために必ずしも明確ではない場合でも。 2.ローカルのelasticsearchをログスタッシュの別の出力として使用して、ログの失敗を確認します。 – Artholl

+0

デバッグモードでのlogstashの使用方法は?もう一つ奇妙なこと、それは私が STDOUT {コーデック=> ruby​​debug} すべてのデータが – zipzap

+0

を掲載されているコードを追加した場合logstashは/ opt/logstash/binに/ logstashを起動するとき、私は--debugオプションを使用するという事実です - デバッグ – Artholl

答えて

0

いくつかのデバッグを試してみてください。

  • logstashで標準出力{}出力を使用し、それによって処理されているどのように多くのドキュメントを参照。
  • logstashとelasticsearchのログを確認して、エラーが報告されているかどうかを確認します(マッピングのタイプが一致しない場合、レコードが削除されます)。問題のようなものをデバッグする
関連する問題