按日期在 elasticsearch 中为每个日志文件创建一个新索引
Create a new index in elasticsearch for each log file by date
目前
我已经通过使用一个日志文件完成了上述任务,并将带有 logstash 的数据传递到 elasticsearch 中的一个索引:
yellow open logstash-2016.10.19 5 1 1000807 0 364.8mb 364.8mb
我真正想做的事
如果我有以下根据年月日命名的日志文件
MyLog-2016-10-16.log
MyLog-2016-10-17.log
MyLog-2016-10-18.log
MyLog-2016-11-05.log
MyLog-2016-11-02.log
MyLog-2016-11-03.log
我想告诉 logstash 按年、月和日读取并创建以下索引:
yellow open MyLog-2016-10-16.log
yellow open MyLog-2016-10-17.log
yellow open MyLog-2016-10-18.log
yellow open MyLog-2016-11-05.log
yellow open MyLog-2016-11-02.log
yellow open MyLog-2016-11-03.log
请问我需要如何做这件事?
谢谢你
也很简单:
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "MyLog-%{+YYYY-MM-DD}.log"
}
}
如果文件中的行包含日期时间信息,您应该使用 date{} 过滤器根据该值设置 @timestamp。如果这样做,您可以使用@Renaud 提供的输出格式,"MyLog-%{+YYYY.MM.dd}".
如果这些行不包含日期时间信息,您可以使用输入的路径作为索引名称,例如“%{小路}”。仅获取路径的基本名称:
mutate {
gsub => [ "path", ".*/", "" ]
}
输出部分中的此配置是否足以满足您的目的??
output {
elasticsearch {
embedded => false
host => localhost
port => 9200
protocol => http
cluster => 'elasticsearch'
index => "syslog-%{+YYYY.MM.dd}"
}
}
目前
我已经通过使用一个日志文件完成了上述任务,并将带有 logstash 的数据传递到 elasticsearch 中的一个索引:
yellow open logstash-2016.10.19 5 1 1000807 0 364.8mb 364.8mb
我真正想做的事
如果我有以下根据年月日命名的日志文件
MyLog-2016-10-16.log
MyLog-2016-10-17.log
MyLog-2016-10-18.log
MyLog-2016-11-05.log
MyLog-2016-11-02.log
MyLog-2016-11-03.log
我想告诉 logstash 按年、月和日读取并创建以下索引:
yellow open MyLog-2016-10-16.log
yellow open MyLog-2016-10-17.log
yellow open MyLog-2016-10-18.log
yellow open MyLog-2016-11-05.log
yellow open MyLog-2016-11-02.log
yellow open MyLog-2016-11-03.log
请问我需要如何做这件事?
谢谢你
也很简单:
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "MyLog-%{+YYYY-MM-DD}.log"
}
}
如果文件中的行包含日期时间信息,您应该使用 date{} 过滤器根据该值设置 @timestamp。如果这样做,您可以使用@Renaud 提供的输出格式,"MyLog-%{+YYYY.MM.dd}".
如果这些行不包含日期时间信息,您可以使用输入的路径作为索引名称,例如“%{小路}”。仅获取路径的基本名称:
mutate {
gsub => [ "path", ".*/", "" ]
}
输出部分中的此配置是否足以满足您的目的??
output {
elasticsearch {
embedded => false
host => localhost
port => 9200
protocol => http
cluster => 'elasticsearch'
index => "syslog-%{+YYYY.MM.dd}"
}
}