首先感谢 newbe 的国内镜像 你要的国内镜像都有√
(亲测版本 elk 7.8.0 , 若部署过程中出现本文未提到的问题,百度上都有,请根据报错提示仔细检查!)
第一:可以不额外下载 filebeat。
logstash 直接读取日志(input),输出到自己的elasticsearch(output),详情请看第二。
第二:可以不安装为系统服务。
e、l、k都可以单独命令行启动(e、l、k即为启动顺序),其中logstash需要指定自定义的配置文件(请自行百度,示例:logstash.conf)
input {
file {
codec => json
path => "你的日志文件全路径"
}
}
filter {
grok {
match => {
# 消息格式仅作参考
"message"=> "%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span},%{DATA:exportable}\]\s+%{DATA:pid}---\s+\[%{DATA:thread\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}"
}
}
}
output {
elasticsearch {
hosts => "localhost:9200" # 请使用自己的 es host
}
}
第三:ELK启动正常,怎么管理index?
打开你的kibana首页(一般是http://localhost:5601),往下看 Manage and Administer the Elastic Stack 的 Spaces,点击进入后看左侧,找到Index patterns,点击查看index列表,若要新建logstash的index,点击新建输入pattern为 logstash-* ,若各步骤无误,当能匹配到logstash源。
第四:可以直接查看logstash输入的log。
点击最左上角菜单按钮 (俗称三横杠,就像“三”吶),找到 Logs,进入此页面,如果没有配置 filebeats一般是什么都没有,可以修改 Settings(页面上方,Stream栏旁边),在 Log indices 一栏,先清空或者直接加 logstash-* ,完了之后页面往下拉,看到 Log Columns,把默认的删掉,点击 add column,至少要选一个 @timestamp,message, span 等等,之后 Apply ! 回到 Stream,自动刷新,大功告成!