我的logstash input 配置文件如下
input {
jdbc {
type => "testdb"
jdbc_driver_library => "/app/sqljdbc_6.0/enu/sqljdbc42.jar"
jdbc_driver_class => "com.microsoft.sqlserver.jdbc.SQLServerDriver"
jdbc_connection_string => "jdbc:sqlserver://192.168.**.**:1433"
jdbc_user => "******"
jdbc_password => "**********"
jdbc_paging_enabled => "true"
schedule => "* * * * *"
statement_filepath => "/app/age_config.d/sqlserver_10.1.2.37.sql"
}
}
我希望,当数据库testdb有新的数据写入时,logstash自动读取新写入的数据
我对log stash不是很熟悉,但一般有两种做法,利用SQL Server中的数据可的标志,如果专门设计一个是否被logstash读取过的标志,或者写入日期等
如果SQL Server元数据没有,可以再读取时和已经读取过的数据做比较找出未被读物的,这样需要记录读取的历史,再比较效率不高