导入数据
### 配置文件格式
导入CSV
```
input {
file {
path => "/home/Logstash/logstash/csv/b_equipment_entity.csv" # 数据文件路径
start_position => "beginning" # 日志文件开始记录变化的位置,若设置为end,可能会报错,导致无法导入数据
}
}
filter {
csv {
columns => ["imei","id","workAmount","alias","equipmentNo","memberTypeName"] # 要导入哪些字段,顺序要与csv文件中的字段顺序一致,否则会导致数据错乱
separator => ","
remove_field => ["host","path","@version","@timestamp","message"] # 要过滤掉的字段,这里的字段都是导入数据时logstash自己加的字段。
}
}
output {
elasticsearch {
hosts => ["http://118.178.241.234:39200"] # ES地址
index => "b_equipment_entity" # 导入到哪个索引(表)中
user => elastic # user
password => Zl800800 # pwd
}
}
```
---
### 注意事项
1.在导入数据是,数据文件中的字段顺序。一定要与配置文件中的字段顺序保持一致。否则,会导致格式错误,从而导入失败。
2.在导入数据时,若出现导入提示成功,但没有下文时。
```
Successfully started Logstash API endpoint {:port=>9600}
```
日志文件输出到上面这句代码就停止后,原因是之前导入数据的`.sincedb`文件没有删除,进入Logstash安装目录下的 `/data/plugins/inputs` 目录,将整个 `file` 目录删除后重建,即可。
在重新导入数据时,记得将之前运行的导入进程K掉。否则也会导致导入失败。