Упругий поиск / Logstash copy_to поле не работает из шаблона - PullRequest
0 голосов
/ 15 марта 2019

У меня есть поле copy_to с именем srch_address, где я накапливаю все адресные строки и определяю его как «текст», чтобы сделать его доступным для поиска.Но даже после завершения конвейера logstash я не могу увидеть это поле в индексе и не могу искать по нему.Может кто-нибудь помочь?У меня есть поле copy_to в шаблоне, как показано ниже

{
    "template": "demographics-template",
    "version": 1,
    "mappings": {
        "_doc": {
            "properties": {
                "emp_id": {
                    "type": "keyword"
                },
                "address_line_1": {
                    "type": "keyword",
                    "copy_to": "srch_address"
                },
                "address_line_2": {
                    "type": "keyword",
                    "copy_to": "srch_address"
                },
                "address_line_3": {
                    "type": "keyword",
                    "copy_to": "srch_address"
                },
                "address_line_4": {
                    "type": "keyword",
                    "copy_to": "srch_address"
                },
                "address_line_5": {
                    "type": "keyword",
                    "copy_to": "srch_address"
                },
                "lst_updt_ts": {
                    "type": "date"
                },
                "srch_address": {
                    "type": "text"
                }
            }
        }
    }
}

Моя конфигурация logstash выглядит следующим образом:

input {
    jdbc {
        #input configurations
        jdbc_driver_library => "....jar"
        jdbc_driver_class => "..."
        jdbc_connection_string => "jdbc:db2://...."
        jdbc_user => "***"
        jdbc_password => "***"
        statement => 
            "SELECT *
               FROM TBL1
              WHERE LST_UPDT_TS > :sql_last_value
               WITH UR"
        use_column_value => true
        tracking_column => "lst_updt_ts"
        tracking_column_type => "timestamp"
        last_run_metadata_path => "...."
    }
}

output {
    elasticsearch {
        #output configurations
        hosts => "http://localhost:9200/"
        index => "demographics"
        document_id => "%{emp_id}"
        template_name => "demographics-template"
        template_overwrite => false
    }
    stdout {
        codec => rubydebug
    }
}
...