引言
在上一篇博客《分布式系列教程(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的方式打印出来了: