数据库Mysql
我已经链接了
https://www.elastic.co/blog/logstash-jdbc-input-plugin
ElasticSearch how to integrate with Mysql
配置文件
logstash-sample.conf
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.
jdbc {
jdbc_driver_library => "C:/logstash-6.5.1/logstash-core/lib/jars/x-pack-sql-jdbc-6.5.1.jar"
jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://localhost:3306/test"
jdbc_user => "root"
jdbc_password => ""
statement => "SELECT * FROM persons"
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
}
}
output{
elasticsearch { codec => json hosts => ["localhost:9200"] index => "persons" }
stdout { codec => rubydebug }
}
数据库名称测试
数据表人员
索引人
日志
C:\logstash-6.5.1\bin>logstash -f logstash-sample.conf
Sending Logstash logs to C:/logstash-6.5.1/logs which is now configured via log4j2.properties
[2018-11-30T18:10:52,868][WARN ][logstash.config.source.multilocal] Ignoring the 'pipelines.yml' file because modules or command line options are specified
[2018-11-30T18:10:52,883][INFO ][logstash.runner ] Starting Logstash {"logstash.version"=>"6.5.1"}
[2018-11-30T18:10:53,550][INFO ][logstash.config.source.local.configpathloader] No config files found in path {:path=>"C:/logstash-6.5.1/bin/logstash-sample.conf"}
[2018-11-30T18:10:53,559][ERROR][logstash.config.sourceloader] No configuration found in the configured sources.
[2018-11-30T18:10:53,894][INFO ][logstash.agent ] Successfully started Logstash API endpoint {:port=>9600}
请求GET
http://localhost:9200/persons/_search/?pretty
{
"error": {
"root_cause": [
{
"type": "index_not_found_exception",
"reason": "no such index",
"resource.type": "index_or_alias",
"resource.id": "persons",
"index_uuid": "_na_",
"index": "persons"
}
],
"type": "index_not_found_exception",
"reason": "no such index",
"resource.type": "index_or_alias",
"resource.id": "persons",
"index_uuid": "_na_",
"index": "persons"
},
"status": 404
}
任何建议都是最欢迎的
答案 0 :(得分:1)
好吧,因为您位于logstash/bin
文件夹中,而logstash-sample.conf
字段也位于logstash/config
文件夹中,所以您需要像这样运行logstash:
C:\logstash-6.5.1\bin> logstash -f ../config/logstash-sample.conf
^
|
add this relative path
答案 1 :(得分:0)
有效的解决方案
windows
配置
jdbc {
jdbc_driver_library => "C:/logstash-6.5.1/logstash-core/lib/jars/x-pack-sql-jdbc-6.5.1.jar"
jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://localhost:3306/test"
jdbc_user => "root"
jdbc_password => ""
statement => "SELECT * FROM persons"
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
}
}
output{
elasticsearch { codec => json hosts => ["127.0.0.1:9200:9200"] index => "persons" }
stdout { codec => rubydebug }
}
希望它可以帮助别人。