Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JDBC不适用于logstash和mongoDB连接_Mongodb_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Logstash Configuration_Elk_Logstash Jdbc - Fatal编程技术网 elasticsearch,logstash-configuration,elk,logstash-jdbc,Mongodb,elasticsearch,Logstash Configuration,Elk,Logstash Jdbc" /> elasticsearch,logstash-configuration,elk,logstash-jdbc,Mongodb,elasticsearch,Logstash Configuration,Elk,Logstash Jdbc" />

JDBC不适用于logstash和mongoDB连接

JDBC不适用于logstash和mongoDB连接,mongodb,elasticsearch,logstash-configuration,elk,logstash-jdbc,Mongodb,elasticsearch,Logstash Configuration,Elk,Logstash Jdbc,此配置将输出为[无法连接到数据库且未找到合适的驱动程序!],我使用的是logstash版本7.5.1以下代码的解决方案。详情请参阅 input { jdbc { jdbc_driver_library => "mongojdbc1.2.jar" jdbc_driver_class => "com.dbschema.MongoJdbcDriver" jdbc_connection_string => "jdbc:mongod


此配置将输出为[无法连接到数据库且未找到合适的驱动程序!],我使用的是logstash版本7.5.1

以下代码的解决方案。详情请参阅

input {
    jdbc {
        jdbc_driver_library => "mongojdbc1.2.jar"
        jdbc_driver_class => "com.dbschema.MongoJdbcDriver"
        jdbc_connection_string => "jdbc:mongodb://DB_ADDRESS:27017/DB_NAME"
        jdbc_validate_connection => true
        jdbc_user => ""
        clean_run => false
        record_last_run => true
        last_run_metadata_path => "/path/.logstash_jdbc_last_run"
        schedule => "*/10 * * * * *"
        jdbc_default_timezone => "YOUR_TIMEZONE"
        statement =>
        "
                    //well, actually this is JavaScript code. And was written in pure blood :(
                    var lastValue = :sql_last_value; //the last saved  date  that was scheduled to run query for
                    var HALF_HOUR_OFFSET = 1800000;

                    var extractedDate = lastValue.substring(0,10); //parsing the date of the last saved date
                    var year = Number(extractedDate.substring(0,4));
                    var month = Number(extractedDate.substring(5,7));
                    var day = Number(extractedDate.substring(8,10));

                    var extractedTime = lastValue.substring(11,23); //parsing the time of the last saved date
                    var hour = Number(extractedTime.substring(0,2));
                    var minute = Number(extractedTime.substring(3,5));
                    var seconds = Number(extractedTime.substring(6,8));
                    var miliseconds = Number(extractedTime.substring(9,12));

                    var upperEpoch = new Date(year,month-1,day,hour,minute,seconds,miliseconds).getTime(); //dates start from 0, that's why the minus 1
                    var bottomEpoch = upperEpoch - HALF_HOUR_OFFSET;

                    db.DB_COLLECTION.find({ COLLECTION_FIELD: { $gte : bottomEpoch, $lte: upperEpoch} },{'_id': false}); //we omit the 'id' since it irrelevant and also cause deserialize exception
                "
    }
}

尝试最新版本的JDBC在哪里可以找到它?您可以共享mongojdbc1.2.jar文件的下载链接吗?可以。当然@SanTiaGoKarThiCk你下载了吗?是的,我现在下载了。我的unity安装文件夹中有一个unityjdbc.jar,我可以使用这个jar吗file@SanTiaGoKarThiCk使用最近下载的一个。