Моим намерением является индексирование в таблицах ElasticSearch N из базы данных Oracle.Для этого я определяю один jdbc
для каждой таблицы в разделе ввода.Я не хочу повторять, например, местоположение JAR-файла JDBC в каждой записи jdbc
, поэтому я попытался mutate/add_field
, чтобы установить значение один раз, но это не работает.Я получаю
Couldn't find any input plugin named 'mutate'
Я пробовал stdin
вместо mutate
, и это тоже не сработало.Есть идеи, как установить и использовать константу?
input {
mutate {
add_field => { "[@metadata][lib]" => "/path/to/lib/ojdbc8.jar" }
}
jdbc {
jdbc_driver_library => [@metadata][lib]
jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"
jdbc_connection_string => "jdbc:oracle:thin:@//localhost:1521/XE"
jdbc_user => "user"
jdbc_password => "pwd"
schedule => "* * * * *"
statement => "SELECT col1 from table1"
}
jdbc {
jdbc_driver_library => [@metadata][lib]
jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"
jdbc_connection_string => "jdbc:oracle:thin:@//localhost:1521/XE"
jdbc_user => "user"
jdbc_password => "pwd"
schedule => "* * * * *"
statement => "SELECT col2 from table2"
}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "my_index"
user => "kibana"
password => "changeme"
}
}