似乎 Logstash 在写入下一个事件之前不会处理最后一个 event/line
Seems Logstash doesn't process the last event/line until the next event is written
我是 logstash 的新手,在实际操作过程中我发现 logstash 不处理日志文件的最后一行。
我的日志文件只有 10 行,我配置了过滤器来处理 one/two 字段并将 json 结果输出到新文件。
所以当 logstash 是 运行 我打开监控文件并在文件末尾添加一行并保存它。什么都没发生。现在我再添加一行,上一个事件显示在输出文件中,下一个事件也是如此。
如何解决此行为?我的 usecase/config 有问题吗?
# The # character at the beginning of a line indicates a comment. Use
# comments to describe your configuration.
input {
file {
path => "C:\testing_temp\logstash-test01.log"
start_position => beginning
}
}
# The filter part of this file is commented out to indicate that it is
# optional.
filter {
grok {
match => { "message" => "%{IP:clientip} pssc=%{NUMBER:response} cqhm=%{WORD:HTTPRequest}"}
}
geoip {
source => "clientip"
}
}
output {
file {
path => "C:\testing_temp\output.txt"
}
}
请确保在手动插入时在行尾添加换行符。 Logstash 会在检测到该行是 "finished".
时立即获取您的更改
你的用例没问题。如果您添加:
stdout { codec => rubydebug }
在您的输出部分,您将立即在您的控制台中看到事件(这对 debugging/testing 来说很好)。
我是 logstash 的新手,在实际操作过程中我发现 logstash 不处理日志文件的最后一行。
我的日志文件只有 10 行,我配置了过滤器来处理 one/two 字段并将 json 结果输出到新文件。
所以当 logstash 是 运行 我打开监控文件并在文件末尾添加一行并保存它。什么都没发生。现在我再添加一行,上一个事件显示在输出文件中,下一个事件也是如此。
如何解决此行为?我的 usecase/config 有问题吗?
# The # character at the beginning of a line indicates a comment. Use
# comments to describe your configuration.
input {
file {
path => "C:\testing_temp\logstash-test01.log"
start_position => beginning
}
}
# The filter part of this file is commented out to indicate that it is
# optional.
filter {
grok {
match => { "message" => "%{IP:clientip} pssc=%{NUMBER:response} cqhm=%{WORD:HTTPRequest}"}
}
geoip {
source => "clientip"
}
}
output {
file {
path => "C:\testing_temp\output.txt"
}
}
请确保在手动插入时在行尾添加换行符。 Logstash 会在检测到该行是 "finished".
时立即获取您的更改你的用例没问题。如果您添加:
stdout { codec => rubydebug }
在您的输出部分,您将立即在您的控制台中看到事件(这对 debugging/testing 来说很好)。