引言
在上一篇博客《分布式系列教程(40) -Linux下安装Logstash》,我们知道了Logstash的安装步骤,本文就来详细讲解Logstash的使用。
下面来讲解一个简单的案例。
Logstash以JSON的格式输出ES的日志
在ElasticSearch日志目录文件夹下(/usr/local/elasticsearch-6.4.3/logs
),可以看到各种es的日志文件:
其中上图的myes.log是我们之前在博客《分布式系列教程(30) -SpringBoot整合ElasticSearch》,定义集群名字的日志输出文件:
查看myes.log 文件,可以看到里面的内容如下:
现在有个需求,需要格式化使用json的格式在控制台输出myes.log,那么该如何实现呢?
答:使用logstash。
操作步骤:
1.进入logstash安装目录的配置文件夹,新建文件myes.conf
cd /usr/local/logstash-6.4.3/config/
vi myes.conf
2.在myes.conf文件里面配置es的日志输出文件myes.log路径,并设定输出方式,内容如下:
input {
# 从文件读取日志信息 输送到控制台
file {
path => "/usr/local/elasticsearch-6.4.3/logs/myes.log"
codec => "json" ## 以JSON格式读取日志
type => "elasticsearch"
start_position => "beginning"
}
}
# filter {
#
# }
output {
# 标准输出
# stdout {}
# 输出进行格式化,采用Ruby库来解析日志
stdout { codec => rubydebug }
}
3.保存并启动logstash(指定myes.conf的方式启动),启动会比较慢:
cd /usr/local/logstash-6.4.3/bin/
./logstash -f ../config/myes.conf
可以看到Logstash把ES的日志文件内容通过json的方式打印出来了: