安装 Logstash
- 1.安装 Logstash
- 1.1 上传 Logstash 并解压
- 1.2 修改配置
- 1.3 启动 Logstash
1、安装 Logstash
要安装Logstash,你需要确保你的系统中已经安装了Java环境,因为Logstash是用Java开发的。
可以通过命令java -version
来检查Java是否已安装。如果没有安装,可以使用以下命令进行安装:
sudo yum install java-1.8.0-openjdk
安装完Java之后,就可以进行Logstash的安装了。
1.1 上传 Logstash 并解压
首先,在你的本地机器上下载Logstash的压缩包,可以从Elastic官方网站下载你需要的版本。下载完成后,使用scp
命令或者你习惯的FTP工具将压缩包上传到CentOS服务器上,一般放在/usr/local/tmp
目录。
上传完成后,通过SSH连接到CentOS服务器,切换到上传的目录,并解压Logstash压缩包:
cd /usr/local/tmp
tar -zxf logstash-6.8.4.tar.gz
1.2 修改配置
将解压后的Logstash文件夹移动到合适的位置,并重命名:
mv logstash-6.8.4 /usr/local/logstash
进入到Logstash的配置文件夹中准备创建和修改配置文件:
cd /usr/local/logstash/config
使用文本编辑器创建配置文件,配置文件名可以自定义,这里我们以mylogstash.conf
为例:
vim mylogstash.conf
在vim
编辑器中,你可以开始输入配置信息,根据上文给出的例子进行编辑。记得配置文件包括input、filter和output三个部分。
好的,没问题,我来为你详细解释Logstash配置文件的各部分,以及如何创建它们:
1.2 修改配置
创建并编辑Logstash的配置文件是设置Logstash处理数据流的关键。在/usr/local/logstash/config
目录下,创建你的配置文件mylogstash.conf
:
cd /usr/local/logstash/config
vim mylogstash.conf
在这个配置文件中,你需要定义三个主要部分:input、filter 和 output。
input部分 定义了Logstash应该从哪里读取数据。举一个简单的例子,它告诉Logstash去监听标准输入(stdin):
input {
stdin {}
}
或者,如果你想要Logstash从文件中读取,可以这样配置:
input {
file {
path => "/path/to/your/logs/*.log"
start_position => "beginning"
}
}
filter部分 是处理数据的核心,你可以使用不同的插件来解析和转换你的日志数据。
例如,如果你的日志是JSON格式的,可以使用json过滤器来解析JSON字段:
filter {
json {
source => "message"
}
}
或者,如果你想解析非结构化的日志数据,grok是一个常用的选择:
filter {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}" }
}
}
output部分 指定了处理后的日志数据应该发送到哪里。
最常见的输出是Elasticsearch,但你也可以选择其他目标,比如文件或控制台:
output {
elasticsearch {
hosts => ["http://localhost:9200"]
index => "logstash-%{+YYYY.MM.dd}"
}
}
如果只是为了测试,你可以简单地输出到控制台:
output {
stdout { codec => rubydebug }
}
保存并退出vim
,Logstash配置文件创建完成。
请确保根据你的实际路径和需求正确设置路径和参数。不同的数据源和需求会需要不同的配置,你可能需要根据自己的情况进行一些调整。
1.3 启动 Logstash
完成配置文件的编辑后,可以启动Logstash来应用这个配置文件。在Logstash的安装目录下执行以下命令:
cd /usr/local/logstash
bin/logstash -f config/mylogstash.conf
通过这个命令,Logstash会根据你之前创建的mylogstash.conf
配置文件开始处理数据。