Logstash 导入数据到Elastic所遇到的问题和经验,整理如下:
1、导入中文乱码,需要在配置文件中,增加编码指定,具体可以参考:
input {
file {
path => "F:/logstash-data-movie-latest/ml-latest/jsonResult.csv"
start_position => "beginning"
sincedb_path => "F:/logstash-data-movie-latest/ml-latest/jsonResult.stash.log"
codec => plain { charset => "UTF-8"}
}
beats {
port => 5044
}
}
2、导入数据没有反应:
可能是上次导入数据后,已经生成了xxxx.stash.log 文件,需要将该文件删除后,才会再次导入。
3、Logstash 的限制:
logstash缺点是没有提供java或者c的开放接口,只能人工操作,而且对机器的性能要求较高,机器性能影响elasticsearch数据的导入速度。
4、在实操时,发现logstash通过指定的文件导入了数据之后,如果该文件发生了改变,即手动向该文件中写入了数据,那么logstash会重新加载该文件。
这个应该就是logstash名称的由来,以及其核心之处。
名称由来:生产环境的log本就是时刻更新,logstash可以动态的监听文件的变化,并将之写入到