Я использую стек ELK, в котором я использовал ввод jdbc в logstash
Я создал 2 индекса
- пользователи
- сотрудники
Оба индекса имеют один и тот же столбец objid
Файл конфигурации Logstash
input {
jdbc {
jdbc_driver_library => "/opt/application/cmt/ELK/logstash-5.3.0/ojdbc14.jar"
jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"
jdbc_connection_string => "jdbc:oracle:thin:@xx.xxx.xx.xx:xxxx:abc"
jdbc_user => "xxxx"
jdbc_password => "xxxxx"
schedule => "*/2 * * * *"
statement => "select * from table_employee"
}
}
output {
elasticsearch {
index => "employees"
document_type => "employee"
document_id => "%{objid}"
hosts => "xx.xxx.xxx.xx:9200"
}
}
input {
jdbc {
jdbc_driver_library => "/opt/application/cmt/ELK/logstash-5.3.0/ojdbc14.jar"
jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"
jdbc_connection_string => "jdbc:oracle:thin:@xx.xxx.xx.xx:xxxx:abc"
jdbc_user => "xx"
jdbc_password => "xxxxxxx"
schedule => "*/2 * * * *"
statement => "select A.OBJID,A.LOGIN_NAME,A.STATUS,A.USER_ACCESS2PRIVCLASS,A.USER_DEFAULT2WIPBIN,A.SUPVR_DEFAULT2MONITOR,A.USER2RC_CONFIG,A.OFFLINE2PRIVCLASS,A.WIRELESS_EMAIL from table_user a where A.STATUS=1"
}
}
output {
elasticsearch {
index => "users"
document_type => "user"
document_id => "%{objid}%{login_name}"
hosts => "xx.xxx.xxx.xx:9200"
}
}
1-й вход jdbc 'employee' содержит 26935
записей
2-й вход jdbc 'users' содержит 10619
записей
Общие записи: 9635
(совпадения objid)
1-я проблема заключается в том, что когда я создаю шаблон индекса в кибане как '
пользователи
Он показывает количество 37554
, почему? должно отображаться только 10619
2-я проблема: когда я создаю шаблон индекса как '
сотрудники
Он показывает количество 27919
, почему? должно отображаться только 26935
Также я создал другой идентификатор документа для индекса «пользователи» %{objid}%{login_name}