配置Filebeat将数据直接输入elasticsearch
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置Filebeat将数据直接输入elasticsearch相关的知识,希望对你有一定的参考价值。
配置Filebeat
Filebeat模块为常见的日志格式提供了最快的入门体验。请参阅常见日志格式的快速入门 以了解如何开始使用模块。如果您使用Filebeat模块开始使用,您可以跳过本节中的内容(包括剩余的入门步骤),并直接进入常见日志格式快速入门 页面。
要配置Filebeat,请编辑配置文件。对于rpm和deb,你会在找到配置文件/etc/filebeat/filebeat.yml
。在Docker下,它位于/usr/share/filebeat/filebeat.yml
。对于mac和win,请查看刚刚提取的存档。还有一个完整的示例配置文件称为filebeat.reference.yml
。
有关配置文件结构的更多信息,请参阅Beats平台参考的 配置文件格式部分 。
以下是filebeat
该filebeat.yml
文件部分的示例。Filebeat为大多数配置选项使用预定义的默认值。
filebeat.inputs:
- type:log
enabled:true
paths:
-
/ var / log / * 。log # - c: programdata elasticsearch logs *
配置Filebeat:
-
定义日志文件的路径(或路径)。
对于最基本的Filebeat配置,您可以使用单个路径定义单个输入。例如:
filebeat.inputs: - type: log enabled: true paths: - /var/log/*.log
此示例中的输入收集路径中的所有文件
/var/log/*.log
,这意味着Filebeat将收集以该目录/var/log/
结尾的所有文件.log
。要从预定义级别的子目录中获取所有文件,可以使用以下模式:
/var/log/*/*.log
。这.log
将从子文件夹中获取所有文件/var/log
。它不会从/var/log
文件夹本身获取日志文件。目前无法递归获取目录所有子目录中的所有文件。 -
如果直接将输出发送到Elasticsearch(而不是使用Logstash),请设置Filebeat可以找到Elasticsearch安装的IP地址和端口:
output.elasticsearch: hosts:[“192.168.1.41:9200”]
-
如果您打算使用随Filebeat提供的示例Kibana仪表板,请配置Kibana端点:
setup.kibana: host:“localhost:5601”
哪里
host
是主机名,其中Kibana运行,例如机器的端口,localhost:5601
。如果您在端口号后面指定路径,则需要包含方案和端口:
http://localhost:5601/path
。 -
如果您已经确保了Elasticsearch和Kibana的安全性,那么在运行设置并启动Filebeat的命令之前,您需要在配置文件中指定凭证。例如:
output.elasticsearch: hosts: ["myEShost:9200"] username: "filebeat_internal" password: "{pwd}" setup.kibana: host: "mykibanahost:5601" username: "my_kibana_user" password: "{pwd}"
这些示例显示了一个硬编码的密码,但您应该将敏感值存储在秘密密钥库中。 该 username
和password
为Kibana设置可选。如果未指定Kibana的凭据,则Filebeat将使用 为Elasticsearch输出指定的username
和password
。如果您打算设置Kibana仪表板,则用户必须具有 kibana_user
内置角色或等效权限。
以上是关于配置Filebeat将数据直接输入elasticsearch的主要内容,如果未能解决你的问题,请参考以下文章
Elastic stack--ES/kibana/filebeat/metricbeat
运用 Elastic Stack 收集 docker 容器日志