Logstash是一款功能强大的数据处理工具,可以实现数据传输、格式处理、打印格式,以及强大的插件功能,常用于日志处理。一.原则
投入
可以从文件、存储器和数据库中提取数据。输入有两个选项。一种是交给Filter进行过滤修剪。另一种是直接给输出
过滤器
数据可以动态转换和解析。您可以以用户定义的方式过滤和修剪数据信息
输出
有了许多输出选项,您可以将数据发送到您想要指定的地方,并具有解锁许多下游用例的灵活性。
二、安装使用1。安装wget https://artifacts . elastic . co/downloads/log stash/log stash-6 . 0 . 1 . rpm。
yum install -y ./logstash- 6 .0.1.rpm
2.Logstash配置文件vim/etc/logstash/logstash.yml
Path.data: /var/lib/logstash #数据存储路径
path . config:/etc/log stash/conf . d/*。其他插件的配置文件,输入输出过滤等等
Path.logs: /var/log/logstash #日志存储路径
3.3中的JVM配置文件。日志
Logstash是一个基于Java的程序,需要在jvm中运行,可以通过配置JVM来为JVM设置。最大和最小内存、垃圾清理机制等选项。这里只是两个最常用的。
JVM的内存分配不要太大也不要太小,这样会降低操作系统的速度。太小,无法开始。
vim/etc/logstash/jvm.options
-Xms256m #关于JVM配置的日志存储
-Xmx1g # logstash使用的最大和最小内存
4.最简单的日志收集配置
安装一个httpd进行测试,并配置Logstash来收集Apache的accless.log日志文件
yum安装httpd
回声“你好世界”>;/var/www/html/index.html #安装httpd并创建测试主页
vim/etc/log stash/conf . d/test . conf
输入{
文件{#使用文件作为数据输入
路径=>。['/var/log/httpd/access_log'] #设置读取数据的路径
start_position = >开始#从文件的开头读取,结束#从文件的结尾读取
}
}
Output {#设置输出的位置
stdout {
编解码器= >;Rubydebug #输出到屏幕
}
}
5.测试配置文件
Logstash是一个独立的命令,但不在环境变量中,因此您只能使用绝对路径来使用该命令。
/usr/share/log stash/bin/log stash-t-f/etc/log stash/conf . d/test . conf #测试执行配置文件,-t应该在-f之前。
配置正常#表示测试正常
6.启动logstash
在当前会话运行logstash后不要关闭此会话,暂时将其称为会话1,然后打开一个名为会话2的新窗口
/usr/share/log stash/bin/log stash-f/etc/log stash/conf . d/test . conf
启动后在会话2中使用curl命令进行测试
curl172 .18.68.14
然后,当您返回到上一个会话1时,您可以看到输出信息
{
" @version"=>。"1",
"主机" =>。" log stash . shuaigoxia . com ",
" path"=>。"/var/log/httpd/access_log "/>
配置日志存储
vim/etc/log stash/conf . d/test . conf
输入{
文件{
路径=>。[ '/var/log/httpd/access_log']
start_position = >“开始”/>
第四,监视别人
监控Nginx日志
仅列出滤波器配置块,输入和输出参考之前的配置
过滤器{
grok {
match =>。{
"消息" =>。“% { HTTPD _ COMBEDLOG }”“% { DATA:real client }”
}
remove_field =>。"消息"
}
日期{
match =>。["时间戳"," dd/MMM/YYYY:H:m:s Z"]
remove_field =>。"时间戳"
}
}
监控Tomcat
仅列出滤波器配置块,输入和输出参考之前的配置
过滤器{
grok {
match =>。{
"消息" =>。" % { HTTPD _公共日志} "
}
remove_field =>。"消息"
}
日期{
match =>。["时间戳"," dd/MMM/YYYY:H:m:s Z"]
remove_field =>。"时间戳"
}
}
V.Filebeat
目前已经设置好在节点上安装Logstash,并发送到Elasticsearch。然而,Logstash运行在基于Java开发的JVM中,因此它是一个重量级的收集工具。对于一个日志收集节点来说,使用Logstash太重了,所以可以用一个轻量级的日志收集工具filebot来收集日志信息,filebot可以交给Logstash在弹性搜索之前进行过滤。这些将在下一篇文章中解释,所以让我们先放一个架构图。
1.《logstash 详解Elasticsearch的基友Logstash》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《logstash 详解Elasticsearch的基友Logstash》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/fangchan/1267299.html