Logstash 导入数据到ES所遇到的问题和经验

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可以动态的监听文件的变化,并将之写入到

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是使用Logstash从MySQL导入数据到Elasticsearch的步骤: 1. 安装Logstash: ```shell sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch sudo yum install logstash ``` 2. 安装Logstash插件: ```shell cd /usr/share/logstash/bin/ sudo ./logstash-plugin install logstash-input-jdbc sudo ./logstash-plugin install logstash-output-elasticsearch ``` 3. 将MySQL的Java连接器复制到Logstash的目录: ```shell scp mysql-connector-java-8.0.13.tar.gz python@10.211.55.7:~/ tar -zxvf mysql-connector-java-8.0.13.tar.gz ``` 4. 创建Logstash配置文件,例如`mysql_to_elasticsearch.conf`,并将以下内容添加到文件中: ```shell input { jdbc { jdbc_driver_library => "/path/to/mysql-connector-java-8.0.13.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_connection_string => "jdbc:mysql://localhost:3306/database_name" jdbc_user => "username" jdbc_password => "password" statement => "SELECT * FROM table_name" } } output { elasticsearch { hosts => ["localhost:9200"] index => "index_name" document_type => "document_type" } } ``` 请注意,你需要将`/path/to/mysql-connector-java-8.0.13.jar`替换为实际的MySQL连接器的路径,`localhost:3306`替换为实际的MySQL主机和端口,`database_name`替换为实际的数据库名称,`username`和`password`替换为实际的数据库用户名和密码,`table_name`替换为实际的表名,`index_name`替换为要创建的Elasticsearch索引名称,`document_type`替换为要创建的文档类型。 5. 启动Logstash并指定配置文件: ```shell sudo ./logstash -f mysql_to_elasticsearch.conf ``` Logstash将会从MySQL中查询数据,并将其导入到Elasticsearch中。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值