filebeat简介及简单例子演示
Filebeat简介和演示
1.1 什么是filebeat?
Filebeat是用于转发和集中日志数据的轻量级传送程序。作为服务器上的代理安装,Filebeat监视您指定的日志文件或位置,收集日志事件,并将它们转发到Elasticsearch或Logstash进行索引。
Filebeat的工作方式如下:启动Filebeat时,它将启动一个或多个输入,这些输入将在为日志数据指定的位置中查找。对于Filebeat所找到的每个日志,Filebeat都会启动收集器。每个收割机都读取一个日志以获取新内容,并将新日志数据发送到libbeat,libbeat会汇总事件并将汇总的数据发送到您为Filebeat配置的输出。
1.2 filebeat的文件夹结构
描述 |
|
filebeat |
用于启动filebeat的二进制文件 |
data |
持久化数据文件的位置 |
logs |
Filebeat创建的日志的位置 |
modules.d |
简化filebeat配置的模板文件夹,如nginx/kafka等日志收集模板 |
filebeat.yml |
filebeat配置文件 |
2.1 filebeat配置解析
首先进入filebeat文件夹下(ddcvc或dddvc都可以)
su elastic
vim filebeat.yml
2.1.1 输入类型配置解析
从 /var/log/ 文件夹下收集后缀为 .Log 的文件,类型是log,不收集包含 .gz 的文件
2.1.2 输出类型配置解析
hosts:要连接到的ElasticSearch节点的列表。事件按循环顺序分发到这些节点。如果一个节点无法访问,则事件将自动返送到另一个节点。每个Elastic节点都可以定义为URL或IP:PORT。若没有指定port,则默认是9200
index:索引名称。默认的格式是filebeat-%{[beat.version]}-%{+yyyy.MM.dd}(如filebeat-6.5.4-2020-09-23)。如果修改了这个配置,则必须同时配置setup.template.name和setup.template.pattern
2.1.3 Logstash输出
hosts
:指定配置的LogStash服务器和监听的端口。
3.1 filebeat简单示例
自己创建一个简单配置文件(.yml)
vim filebeat_log.yml
Paths 收集自己文件logs下的log文件
Output.console 输出到控制台(便于演示)
赋予其权限
chmod 755 filebeat_log.yml
#启动filebeat命令
./filebeat -e -c filebeat_log.yml -d "publish"
-c 后面跟自定义配置文件 -d 是开启debug模式
现在开始就在实时收集设定目录下的log文件,可以再开一个窗口去log文件中写入一些单词看效果。
vim a.log
写入一个filebeat
再切回原来那个窗口
控制台就输出了这些内容
3.2 filebeat输出到ElasticSearch示例
我们重新写一个配置文件
vim filebeat_log2.yml
依旧监控我们filebeat的logs目录
先赋予权限
chmod 755 filebeat_log2.yml
#然后运行该配置文件
./filebeat -e -c filebeat_log2.yml -d “publish”
切到第二个窗口在/ddhome/bin/filebeat/logs/下创建b.log
vim b.log
随便写几个单词
让我们打开ElasticSearch页面查看
已经自动生成了filebeat的索引,默认是以日期结尾
再点击数据浏览
就能看见刚写的几条数据已经进入ElasticSearch了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步