备份一个配置文件
(实际上我是为了一个1024的徽章)
1. 全部
logstash-test.conf
input {
kafka {
bootstrap_servers => "127.0.0.1:9092"
topics => ["test-log"]
}
}
filter {
json{
source => "message"
}
date{
match => ["time", "yyyy-MM-dd HH:mm:ss.SSS"]
target => "@timestamp"
}
mutate {
convert => [
"status", "integer"
,"delay", "integer"
]
}
}
output {
elasticsearch {
hosts => "127.0.0.1:9200"
action => "index"
index => "test-log-%{+YYYY.MM.dd}"
codec => "json"
}
stdout {
codec => rubydebug
}
}
2. 拆分
input {
kafka {
bootstrap_servers => "127.0.0.1:9092"
topics => ["test-log"]
}
}
# 配置数据源
filter {
json{
source => "message"
}
# 解析message字段 实际上传递的值被赋给了message,且是json格式
# 为了将传递的json字符串转为对应不同的字段使用json组件
date{
match => ["time", "yyyy-MM-dd HH:mm:ss.SSS"]
target => "@timestamp"
}
# time字段被解析出来,(赋值的时候format用的yyyy-MM-dd HH:mm:ss.SSS)
# 将time字段的时间赋值给@timestamp字段(不赋值默认为信息上传时间)
mutate {
convert => [
"status", "integer"
,"delay", "integer"
]
}
# 将status、delay转为int类型
}
output {
elasticsearch {
hosts => "127.0.0.1:9200"
action => "index"
index => "test-log-%{+YYYY.MM.dd}"
codec => "json"
}
# 数据发送到elasticsearch
stdout {
codec => rubydebug
}
# logstash控制台输出
}