Remember: if a new user has a bad time, it's a bug in logstash.
https://kibana.logstash.es/content/logstash/
每位系统管理员都肯定写过很多类似这样的命令:cat randdata | awk '{print $2}' | sort | uniq -c | tee sortdata。这个管道符|可以算是 Linux 世界最伟大的发明之一(另一个是“一切皆文件”)。
Logstash 就像管道符一样!
你输入(就像命令行的cat)数据,然后处理过滤(就像awk或者uniq之类)数据,最后输出(就像tee)到其他地方。
当然实际上,Logstash 是用不同的线程来实现这些的。如果你运行top命令然后按下H键,你就可以看到下面这样的输出:
。。。
数据在线程之间以事件的形式流传。不要叫行,因为 logstash 可以处理多行事件。
Logstash 会给事件添加一些额外信息。最重要的就是@timestamp,用来标记事件的发生时间。